18

I want to implement an autocomplete edittext with chips in my application and I want to do it in a way that it's done here: material design chips. First I would like to ask if there is some kind of widget (maybe as part of the new support library) or a solution that I can use for easy implementation. (I know that this question has been asked before but I just want to know if something changed in the meantime). Also I found this library, but I don't know how can I use it (and can I use it) for autocompletion of my sets of data... Has anyone worked with this library before and can share their experience?

Any help would be appreciated!

Gabriele Mariotti
  • 320,139
  • 94
  • 887
  • 841
Sandra
  • 4,239
  • 10
  • 47
  • 80

5 Answers5

9

The new Material Components for Android contains the component Chip.

You can add the chip to your layout file with:

<com.google.android.material.chip.Chip
    android:id="@+id/some_chip"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="This is a chip" />

enter image description here

With the classic Design Support Library 28.0.0 you can use the package:

<android.support.design.chip.Chip
../>

You can customize the component using these attributes:

  • android:checkable: If true, the chip can be toggled. If false, the chip acts like a button
  • app:chipIcon: Used to display an icon within the chip
  • app:closeIcon: Used to display a close icon within the chip

You can find the official documentation here.

Gabriele Mariotti
  • 320,139
  • 94
  • 887
  • 841
  • 1
    I found this myself, this is exactly what was needed a long time ago. Great that we are getting it finally. Thanks! – Sandra May 08 '18 at 13:21
  • Why is app:checkable not working? I get the "error: attribute checkable not found." – Darush Jul 14 '18 at 19:36
  • @GabrieleMariotti I used android:checkable instead of app:checkable and it worked. Any ideas would be very much appreciated. – Darush Jul 14 '18 at 19:39
6

I actually ended up using this library. The autocomplete view and chips that this library provides are not "materially" styled, but you can do it yourself with no great effort. After great research I realized that this library gives you the most easy way of implementing your own sets of data into the logic. All the other libraries were customized for using Android contact or emails, and it was not so trivial to change the code and query your own sets of data. So if someone wants to implement chips, but with custom data querying I'd say this is the right way to go.

Sandra
  • 4,239
  • 10
  • 47
  • 80
1

there is also a new library for material chips!

Alexander Thiele
  • 657
  • 5
  • 13
0

Latest so far.. This library looks super and easy. You need

implementation "com.hootsuite.android:nachos:1.1.1"

and

<com.hootsuite.nachos.NachoTextView
    android:id="@+id/nacho_text_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:chipHorizontalSpacing="2dp"
    app:chipBackground="@color/chip_background"
    app:chipTextColor="@color/cheddar"
    app:chipTextSize="16dp"
    app:chipHeight="30dp"
    app:chipVerticalSpacing="3dp"/>

and

val suggestions = arrayOf("Tortilla Chips", "Melted Cheese", "Salsa", "Guacamole", "Mexico", "Jalapeno")
val adapter = ArrayAdapter(context, android.R.layout.simple_dropdown_item_1line, suggestions)
nachoTextView.setAdapter(adapter)

Play with the customization!

M. Usman Khan
  • 3,689
  • 1
  • 59
  • 69
-1

This links might help

The Chip widget provides a complete implementation of Material Design’s chip component. Example code of how to include the widget in your layout:

<com.google.android.material.chip.Chip
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello_world"/>

https://material.io/develop/android/components/chip/

Another 3rd party libraries

Nachos is a library for Android that provides a custom TextView allowing users to enter text and create material chips in the text field. https://github.com/hootsuite/nachos

MaterialChipsInput Implementation of Material Design Chips component for Android. The library provides two views: ChipsInput and ChipView. https://github.com/pchmn/MaterialChipsInput

Material Chip view. Can be used as tags for categories, contacts or creating text clouds https://github.com/robertlevonyan/materialChipView

MarGin
  • 2,078
  • 1
  • 17
  • 28