錯誤嘗試
if (size.getCheckedRadioButtonId().equals(small)) // 錯誤:返回 int ID,非 View 對象
正確代碼
RadioGroup group = findViewById(R.id.radioGroup);
int checkedId = group.getCheckedRadioButtonId();
switch (checkedId) {
case R.id.rb_small:
// 小尺寸邏輯
break;
case R.id.rb_medium:
// 中尺寸邏輯
break;
case R.id.rb_large:
// 大尺寸邏輯
break;
default:
break;
}
動態監聽選中變化
group.setOnCheckedChangeListener((g, checkedId) -> {
switch (checkedId) { ... }
});
注意
getCheckedRadioButtonId() 返回 int(View ID),未選中時返回 -1。
- 不可直接比較
RadioButton 對象,需比較 ID。