Компоненты чипов в библиотеке поддержки Android?
Этот материал дизайна витрины говорит о компонентах чипсов. Но я не смог найти пример кода этого компонента?
Как я могу использовать это?
Пожалуйста, покажите мне код XML и код Java.
3 ответа
Попробуйте эту библиотеку: https://github.com/klinker41/android-chips
Проверьте образец, чтобы понять, как его использовать.
Вам не нужно использовать стороннюю библиотеку для изготовления чипов.
Чип в основном TextView
с закругленным фоном. Вы можете добавить кнопку удаления и ImageView
также для создания представления, такого как то, которое используется для контактов Google.
Для целей примера я буду использовать только простое TextView
, Сначала создайте пользовательский интерфейс для чипа.
-> shape_chip_drawable.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/colorPrimary" />
<padding
android:bottom="12dp"
android:left="12dp"
android:right="12dp"
android:top="12dp" />
<corners android:radius="30dp" />
</shape>
В файле макета активности просто определите этот файл ресурсов для рисования как TextView
фон, как это:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/shape_chip_drawable"
android:text="Hello, I'm a simple Chip!"
android:textColor="@android:color/white"
android:textStyle="bold" />
Это вид, который создается:
Теперь мы можем использовать HorizontalScrollView
отображать ряд чипов (например, приложение GooglePlay) или использовать StaggeredGridLayoutManager
построить шахматную сетку фишек.
[РЕДАКТИРОВАТЬ]
Если вы хотите показать фишки как FlowLayout
, который изначально не поддерживается в Android, нам нужно использовать библиотеку. Не волнуйтесь, это очень маленькое изменение.
Вы добавили следующую строку в ваши зависимости Gradle:
compile 'com.xiaofeng.android:flowlayoutmanager:1.2.3.2'
и установите свой менеджер макета представления переработчика с этим:
recyclerView.setLayoutManager(new FlowLayoutManager());
Дополнительные подробности здесь на GitHub
Хорошего дня! Сделайте upvote, если это поможет.
Я знаю, что опаздываю, но это может помочь другим людям. Мне очень нравится эта реализация также https://github.com/robertlevonyan/materialChipView. Эта библиотека требует как минимум com.android.support:appcompat-v7:25.2.0
из библиотеки поддержки. Я использую его с этим менеджером макета https://github.com/BelooS/ChipsLayoutManager. Проверьте их и посмотрите, соответствуют ли они вашим требованиям.