开发者社区> 问答> 正文

如何在Android中将ArrayList的所有元素显示为Chips

我有ArrayList 这样的[Angularjs, JavaScript, Css]

在我的适配器中,我ArrayList从另一个Intent 获取标签的。我尝试通过以下方法显示ArrayListas Chips的所有元素,但仅得到ArrayList的最后一个元素。我只看到一个带有ArrayList的最后一个元素的芯片。

for (String tag: card.getTags()) { Log.d(TAG, "tag - " + tag); holder.tags.setText(tag); } 如何更改代码以将ArrayList的所有元素显示为Chips。

展开
收起
小六码奴 2019-10-03 19:34:31 774 0
1 条回答
写回答
取消 提交回答
  • ChipGroup在您想显示芯片的XML布局中添加一个

    <com.google.android.material.chip.ChipGroup android:id="@+id/chipGroup" android:layout_width="match_parent" app:chipSpacingVertical="2dp" android:layout_height="wrap_content"/> 现在你可以使用这个方法将你的ArrayList添加为Chip在ChipGroup:

    private void addChip(String pItem, ChipGroup pChipGroup) { Chip lChip = new Chip(this); lChip.setText(pItem); lChip.setTextColor(getResources().getColor(R.color.primary_text)); lChip.setChipBackgroundColor(getResources().getColorStateList(R.color.chip_bg));

    pChipGroup.addView(lChip, pChipGroup.getChildCount() - 1);
    

    }

    2019-10-09 15:34:54
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载