Android开发中如何获取RadioGroup内RadioButton的总数量
解法1:无子元素混入时直接取值
RadioGroup继承自ViewGroup,可直接调用getChildCount()获取子元素总数,如果你确认该RadioGroup内仅添加了RadioButton、没有插入其他类型View(比如自定义分隔线、额外文本控件等),直接使用以下代码即可:
// rg为你实例化的RadioGroup对象 int radioTotal = rg.getChildCount();
你的场景中动态添加了2个RadioButton,此时拿到的radioTotal值就是2。
解法2:需过滤非RadioButton元素时使用
如果后续你的RadioGroup有可能插入其他类型的子控件,需要准确统计仅RadioButton的数量,遍历过滤即可:
int radioCount = 0; for (int i = 0; i < rg.getChildCount(); i++) { // 仅统计类型为RadioButton的子元素 if (rg.getChildAt(i) instanceof RadioButton) { radioCount++; } }
补充说明
如果你是在本次动态添加RadioButton的同一段逻辑中获取计数,也可以直接取listArray.length,你循环多少次就添加了多少个RadioButton,和实际添加数量完全一致。如果后续存在动态增删RadioButton的操作,优先使用上面两个方法获取实时计数。
内容的提问来源于stack exchange,提问作者m umer
相关产品推荐
相关产品推荐

