RadioGroup的getCheckedRadioButtonId()方法无法获得正确的id
项目上经常会用到单选框,获得选中项id的时候百度上看都用的getCheckedRadioButtonId()方法,但是重复打开会获得一个比较大的一串数字。开始很不解,各种百度也没百度出来,后来看着那串数字感觉有问题(当时也不知道咋想的),我就判断它如果大于3(我的单选项就3个)的话就循环-去3,最后得到就变成正确的id了。
//获得当前选中项id
selectId = radioGroup.getCheckedRadioButtonId();
//如果是-1则是什么都没选
if (selectId == -1) {
return;
}
//id会获得所有选中项的n倍+选中项的id
while (selectId > 3) {
selectId = selectId % 3;//除余即可获得真正的id
}
用减法会卡,那串数字太大了