Чипсы для Android
Я хочу реализовать автозаполнение edittext с чипами в своем приложении, и я хочу сделать это так, как это делается здесь: чипы для материалов.
Сначала я хотел бы спросить, есть ли какой-то виджет (возможно, как часть новой библиотеки поддержки) или решение, которое я могу использовать для легкой реализации. (Я знаю, что этот вопрос задавали раньше, но я просто хочу знать, что что-то изменилось тем временем).
Также я нашел этот library, но я не знаю, как его использовать (и могу ли я использовать его) для автозаполнения моих наборов данных... Кто-нибудь работал с этой библиотекой раньше и может поделиться своим опытом?
Любая помощь будет оценена!
Ответы
Ответ 1
Новый Material Components для Android содержит компонент Chip
.
Вы можете добавить чип в файл макета с помощью:
<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]()
С классической библиотекой поддержки проектирования 28.0.0 вы можете использовать пакет:
<android.support.design.chip.Chip
../>
Вы можете настроить компонент, используя следующие атрибуты:
android:checkable
: если true
, чип можно переключать. Если false
, чип действует как кнопка
app:chipIcon
: используется для отображения значка внутри чипа
app:closeIcon
: используется для отображения значка закрытия внутри чипа
Вы можете найти официальную документацию здесь.
Ответ 2
Я действительно закончил использование этой библиотеки. Представление автозаполнения и чипы, которые предоставляет эта библиотека, не являются "материальными", но вы можете сделать это самостоятельно без особых усилий. После больших исследований я понял, что эта библиотека дает вам самый простой способ реализовать свои собственные наборы данных в логике. Все остальные библиотеки были настроены для использования контактов Android или электронной почты, и было не так тривиально изменять код и запрашивать собственные наборы данных. Поэтому, если кто-то хочет реализовать фишки, но с запросами пользовательских данных, я бы сказал, что это правильный путь.
Ответ 3
Ознакомьтесь с этой библиотекой! Я думаю, это может удовлетворить ваши потребности.
Ответ 4
для материальных чипов есть также новая библиотека
Ответ 5
Последнее до сих пор.. Эта библиотека выглядит супер и легко. Вам нужно
implementation "com.hootsuite.android:nachos:1.1.1"
и
<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"/>
и
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)
Играй с настройками!
Ответ 6
Эти ссылки могут помочь
Виджет Chip обеспечивает полную реализацию компонента чипа Material Designs. Пример кода, как включить виджет в макет:
<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/
Другие сторонние библиотеки
Nachos - это библиотека для Android, которая предоставляет пользовательский TextView, позволяющий пользователям вводить текст и создавать текстовые фишки в текстовом поле.
https://github.com/hootsuite/nachos
MaterialChipsInput
Реализация компонента Material Design Chips для Android. Библиотека предоставляет два представления: ChipsInput и ChipView.
https://github.com/pchmn/MaterialChipsInput
Материал Чип вид. Может использоваться как теги для категорий, контактов или создания текстовых облаковhttps://github.com/robertlevonyan/materialChipView