RadioGroup调用check(id)方法时,OnCheckedChangedListener被多次回调问题

本文探讨了在Android中使用RadioGroup组件时遇到的问题:通过RadioGroup.check()方法选择RadioButton时,OnCheckedChangeListener会触发多次回调。文章分析了这一现象,并提出了一种替代方案。
摘要由CSDN通过智能技术生成
在代码中选中RadioGroup其中某一个RadioButton选项,有两种方式:
1. RadioGroup.check(radioButtonId)方法;
2. 直接控制该RadioButton,使用RadioButtton.setChecked(true)方法.
近日偶然发现,使用方法1选中时,RadioGroup设置的OnCheckedChangeListener会被多次回调(onCheckedChanged方法)。经多次实验,有如下规律:
假如当前被选中的RadioButton是oneRbtn, 然后通过RadioButtton.setChecked(true)方法选中twoRbtn。此时onCheckedChanged(RadioGroup group, int checkedId)会被回调三次,第一次传回的checkedId为oneRbtn,后两次均为twoRbtn。
此问题暂时不清楚原因和解决方法。只能使用方法2直接控制RadioButton。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值