如何在Android TextView中实现类似tag的stackoverflow?

时间:2019-05-16 09:25:30

标签: java android textview tags

我正在开发食品订单应用程序,用户可以在其中从列表视图中选择所需的浇头。

我希望所选项目以流行标签方式 as shown in the pic的堆栈溢出形式显示。

在图片中,我在stackoverflow应用程序中选择了 java,C#和android ,它们显示为独立的框式项目。

我想在没有 X 的情况下实现相同的字符串框。

我有一个textview,尝试将它们添加为独立的项目,但不确定如何实现。

任何帮助都会非常有用。

1 个答案:

答案 0 :(得分:1)

使用Chip进行构建的最佳方法,请查看下面的一些代码片段。

在.xml中添加以下代码

<com.google.android.material.chip.ChipGroup
    android:id="@+id/filter_chip_group"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/filter_chip_txt">

    <com.google.android.material.chip.Chip
        android:id="@+id/filter_chip"
        style="@style/Widget.MaterialComponents.Chip.Filter"
        android:layout_width="wrap_content"
        android:layout_height="35dp"
        android:layout_marginLeft="10dp"
        android:layout_marginStart="10dp"
        android:text="Dogs"/>

    <com.google.android.material.chip.Chip
        android:id="@+id/filter_chip2"
        style="@style/Widget.MaterialComponents.Chip.Filter"
        android:layout_width="wrap_content"
        android:layout_height="35dp"
        android:text="Cats"/>
</com.google.android.material.chip.ChipGroup>

.java内

 ChipGroup filterChipGroup = findViewById(R.id.filter_chip_group);
    Chip filterChip = findViewById(R.id.filter_chip);
    Chip filterChip2 = findViewById(R.id.filter_chip2);
    CompoundButton.OnCheckedChangeListener filterChipListener = new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            Log.i(TAG, buttonView.getId() + "");
        }
    };
    filterChip.setOnCheckedChangeListener(filterChipListener);
    filterChip2.setOnCheckedChangeListener(filterChipListener);

我希望这将有助于实现您的期望。