Android疑难杂症之OnCheckedChangeListener不区分手动点击

项目中的一个小功能:
实现一个列表,每一项是一个单选,不可多选:

实现:
使用 ListView+CheckBox,(当然还有很多更好的方法,由于有封装好的控件,就偷个懒),中间遇到个问题就是:setCheck()时会回调
OnCheckedChangeListener,导致多次循环调用。

问题解决:
在OnCheckedChangeListener中区分收手动setCheck(),还是点击时的回调

 checkBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
            if (!buttonView.isPressed()) return;
            if (null != onOptionListener) {
                onOptionListener.onCheckChangedListener(position, isChecked, BookOptionItem.this);
            }
        });
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,539评论 25 709
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,519评论 2 59
  • 某一天,某个地方,突然有一片云彩,为你遮挡阳光。
    梅影z阅读 1,274评论 0 0
  • 为什么人们在关系中不了解彼此?了解彼此最好的方法是什么? 人们之所以不了解彼此,正是因为他们试图了解彼此。 ...
    小玉空间阅读 2,778评论 0 0
  • 强推 英剧《黑镜》 看了前两集深受震撼 国歌 1500万 国歌: 清晨,首相被电话吵醒,从电话中得知:英国公主,集...
    八零八七阅读 1,346评论 0 1

友情链接更多精彩内容