我有一个 ConstraintLayout 作为根布局,它很好。
不过,我现在有一个 RadioGroup,我必须在其中创建两列 RadioButtons。
由于 ConstraintLayout 是为了摆脱嵌套布局,我认为将这些 RadioButtons 放在 RadioGroup 中并适当放置它们会很好。
事实证明,将 ConstraintLayout 作为根布局,包含 RadioGroup,似乎没有改变任何东西。
但也许我错了。
你们如何在 ConstraintLayout 内的 RadioGroup 中实现两行 RadioButton?
Cheers
View
必须使用其直接父级的布局属性。例如,你不能拥有RadioButton
s with layout_constraint
s,因为直接父级是RadioGroup
and RadioGroup
不知道如何解释这些属性。
RadioGroup
延伸LinearLayout
,所以你可以用一个单一的RadioGroup
是单行或单列RadioButton
s。你可以有两个RadioGroup
布局和 java 代码中的 s 监听两者的更改。
private RadioGroup mGroup1; // init in onCreate
private RadioGroup mGroup2; // init in onCreate
private OnCheckedChangedListener mCheckListener = new OnCheckedChangedListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// To make it appear as if the two groups are one large group,
// checking something in either should clear the check in the other.
RadioGroup otherGroup = group == mGroup1 ? mGroup2 : mGroup1;
otherGroup.clearCheck();
// do something with checkedId
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)