近期在做一个答题类的模块,有单选、简答、调查问卷等,我是用动态布局的方式生成答题项的。在弄单选的时候遇到一个比較奇葩的问题,在代码中生成RadioGroup和RadioButton的时候。会发现不能相互排斥,变成多选。通过排查发现,仅仅要每一个RadioButton去掉setId的设置就正常了,只是原因还是不明白,继续尝试,发现RadioGroup我也设置了一个Id座位题目标识。调用的是RadioGroup.setId,而且发现,这里设置的ID和后面某个RadioButton设置的Id是一样的。。。
最终找到问题所在。事实上核心就一个,同一个布局里面Id是不能反复的。放在XML布局我们一目了然(当然IDE不让你通过编译),解决之。。。
。