首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止芯片双击

防止芯片双击
EN

Stack Overflow用户
提问于 2021-03-10 00:20:06
回答 1查看 122关注 0票数 1

我有一个chipgroup和一些chips在里面。我遍历这个chipgroup,获取每个chip并为其添加一个checkedChangeListener

代码语言:javascript
复制
for (int i = 0; i < chipGroup.getChildCount(); i++) {
            final Chip chip = (Chip) chipGroup.getChildAt(i);
            chip.setOnCheckedChangeListener((buttonView, isChecked) -> {
                 //My code
            });
        }

因此,当我打开我的应用程序并点击chip,例如chip1,它就会选择它。然后,当我再次单击该chip1时,它也会触发checkedChangeListener并在其中运行我的代码。isChecked状态没有帮助,因为它只是在每次点击时改变它的值,就像true->false->true->false一样。但是如果chip is已经检查过了,我只是不想在onCheckedChangeListener中运行我的代码。我认为一种解决方案是将我选择的chip保存在fragmentViewModel中。你的解决方案是什么?

EN

回答 1

Stack Overflow用户

发布于 2021-03-10 00:30:59

我相信你可以只在chipGroup上设置一个setOnCheckedChangeListener,而不是每个单独的芯片。该侦听器将传入一个ID和isChecked作为参数。我相信在群上使用此回调将有助于解决您的问题。希望这对你遇到的问题有所帮助。

有关https://material.io/components/chips/android#using-chips的更多信息

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66550742

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档