Android material 个筹码

Android material chips

我想在我的应用程序中实现一个带有芯片的自动完成编辑文本,我想按照这里完成的方式进行:material design chips。 首先,我想问一下是否有某种小部件(可能是新支持库的一部分)或我可以用来轻松实现的解决方案。 (我知道之前有人问过这个问题,但我只想知道在此期间是否发生了某些变化)。 我还发现了这个 library,但我不知道如何使用它(我可以使用它)来自动完成我的数据集......有没有人以前使用过这个库并可以分享他们的经验?

如有任何帮助,我们将不胜感激!

material 个筹码还有一个新的 library

我实际上最终使用了这个 library。该库提供的自动完成视图和条形图没有 "materially" 样式,但您可以轻松完成。经过大量研究,我意识到这个库为您提供了将您自己的数据集实现到逻辑中的最简单方法。所有其他库都是为使用 Android 联系人或电子邮件而定制的,更改代码和查询您自己的数据集并不是那么简单。因此,如果有人想实现芯片,但使用自定义数据查询,我会说这是正确的方法。

Material Components for Android contains the component 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" />

经典的Design Support Library 28.0.0你可以使用包:

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

您可以使用这些属性自定义组件:

  • android:checkable: 如果true,芯片可以切换。如果false,芯片的作用就像一个按钮
  • app:chipIcon: 用于在芯片内显示一个图标
  • app:closeIcon: 用于在芯片内显示关闭图标

可以找官方documentation here.

此链接可能有帮助

芯片小部件提供了 Material 设计芯片组件的完整实现。如何在布局中包含小部件的示例代码:

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

另一个第 3 方库

Nachos 是 Android 的库,它提供自定义 TextView,允许用户输入文本并在文本字段中创建 material 条块。 https://github.com/hootsuite/nachos

Material芯片输入 为 Android 实施 Material 设计芯片组件。该库提供了两个视图:ChipsInput 和 ChipView。 https://github.com/pchmn/MaterialChipsInput

Material芯片视图。可用作类别、联系人或创建文本云的标签 https://github.com/robertlevonyan/materialChipView

到目前为止最新的.. This library 看起来超级简单。你需要

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)

玩自定义!