获取 Android 中 RadioGroup 中的 RadioButtons 数组
Posted
技术标签:
【中文标题】获取 Android 中 RadioGroup 中的 RadioButtons 数组【英文标题】:Get the array of RadioButtons in a RadioGroup in Android 【发布时间】:2011-07-03 01:14:46 【问题描述】:有没有办法在 android RadioGroup
中获取 RadioButton
s 的数组(或集合)?我想将单个侦听器添加到单选按钮,但我没有看到任何明显的迭代它们的方法。
【问题讨论】:
【参考方案1】:这应该可以解决问题:
int count = radioGroup.getChildCount();
ArrayList<RadioButton> listOfRadioButtons = new ArrayList<RadioButton>();
for (int i=0;i<count;i++)
View o = radioGroup.getChildAt(i);
if (o instanceof RadioButton)
listOfRadioButtons.add((RadioButton)o);
Log.d(TAG,"you have "+listOfRadioButtons.size()+" radio buttons");
【讨论】:
嘿,我也创建了一组单选按钮,但我想取消选中所有,然后只检查该数组列表中的一个..我该怎么做??【参考方案2】:为什么需要查询radioGroup?为什么你不能直接在 RadioButton 上设置你的监听器,你必须能够持有 radioButtons,因为你是把它们添加到 RadioGroup 的人。
无论如何,RadioGroup 只是一种特殊类型的 LinearLayout,它的所有子元素都是您添加的 RadioButton。您可以遍历所有子视图以访问 RadioButtons。
【讨论】:
我在 XML 布局中创建了RadioGroup
,所以所有 RadioButton
已经是其中的一部分。我从来没有在代码中手动添加它们。感谢您的回答以上是关于获取 Android 中 RadioGroup 中的 RadioButtons 数组的主要内容,如果未能解决你的问题,请参考以下文章
获取 Android 中 RadioGroup 中的 RadioButtons 数组