近日在開發時,遇到一個需求需要實現單選,首先想到使用RadioGroup,但超過一行時,實現RadioButton換行時,一時沒了辦法,上網查資料所得
找到一個比較簡單地方法,採用兩個RadioGroup,使用RadioGroup的clearCheck()方法,不過鬱悶的事就是在調用clearCheck()也會觸發setOnCheckedChangeListener 方法
後來查了資料可以通過加一個標記來解決這個問題:代碼如下:
group.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkId) {
boolean isSelect = false;
if(group != null && checkId > -1 && !isSelect){
isSelect = true;
group1.clearCheck();
isSelect = false;
}
}
});