Подтвердить что ты не робот

Компонент Chips в библиотеке поддержки android?

В этом случае в материале по дизайну материалов говорится о компоненте чипов. Но я не смог найти пример кода этого компонента?

Как я могу его использовать?

пожалуйста, покажите мне код XML и код Java.

4b9b3361

Ответ 2

Вам не нужно использовать стороннюю библиотеку, чтобы сделать 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 для создания шахматной сетки чипов.

[EDIT]

Если вы хотите показать чипы как FlowLayout, которые по сути не поддерживаются в Android, нам нужно использовать библиотеку. Не беспокойтесь, это очень небольшое изменение.

Вы добавили следующую строку в свои зависимости Gradle:

compile 'com.xiaofeng.android:flowlayoutmanager:1.2.3.2'

и установите для него менеджер компоновки ресайклеров:

recyclerView.setLayoutManager(new FlowLayoutManager());

Дополнительная информация здесь, на GitHub

Отличный день! Сделайте upvote, если это поможет.

Ответ 3

Я знаю, что опаздываю, но это может помочь другим людям. Мне также очень нравится эта реализация https://github.com/robertlevonyan/materialChipView. Этот lib требует, по крайней мере, com.android.support:appcompat-v7:25.2.0 библиотеки поддержки. Я использую его с этим менеджером макетов https://github.com/BelooS/ChipsLayoutManager. Проверьте их и посмотрите, соответствуют ли они вашим требованиям.