android支持库中的芯片组件?

时间:2016-04-12 04:40:17

标签: android material-design android-chips

This材料设计展示案例说明芯片组件。但我找不到这个组件的示例代码?

我该如何使用它?

请给我看一下XML代码和java代码。

3 个答案:

答案 0 :(得分:54)

您无需使用第三方库来制作chips

筹码基本上是TextView,背景为圆角。您还可以添加删除按钮和ImageView来创建视图,例如用于Google联系人的视图。

出于示例的目的,我将仅使用简单的TextView。首先为芯片创建UI。

- >的 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" />

这是创建的视图:

Chip view created

现在我们可以使用HorizontalScrollView来显示一排筹码(例如GooglePlay应用)或使用StaggeredGridLayoutManager来构建交错的筹码网格。

[编辑]

如果您想将芯片显示为FlowLayout,而Android本身并不支持,我们需要使用库。别担心,这是一个非常小的变化。

您已将以下行添加到Gradle依赖项中:

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

并使用它设置您的回收站视图布局管理器:

recyclerView.setLayoutManager(new FlowLayoutManager());

GitHub

上的其他详细信息

祝你有美好的一天!如果它有帮助就做upvote。

答案 1 :(得分:4)

试试这个库: https://github.com/klinker41/android-chips

检查样本以了解如何使用它。

答案 2 :(得分:4)

我知道我迟到了,但这可以帮助其他人。我也很喜欢这个实现https://github.com/robertlevonyan/materialChipView。此lib需要至少com.android.support:appcompat-v7:25.2.0的支持库。我将它与此布局管理器https://github.com/BelooS/ChipsLayoutManager一起使用。 检查这些,看看它们是否符合您的要求。