在XML文件里面, RadioButton要放在RadioGroup里面, 以保证只有一个选项被选中。
CheckBox可以放在RadioGroup里面,也可以不放在里面。
<RadioGroup android:id="@+id/radioG1" android:layout_width="match_parent" android:layout_height="wrap_content"> <RadioButton android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/name1" android:id="@+id/radio1"/> <RadioButton android:layout_below="@+id/radio1" android:id="@+id/radio2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/name2"/> </RadioGroup>
在监听RadioGroup和CheckBox时, 用OnCheckedChangListener, 可以使用内部类
radioGroup1.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int i) { if (radioButton1.getId() == i) { Toast.makeText(MainActivity.this, "R K", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "R R", Toast.LENGTH_SHORT).show(); } } });
checkBox1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { if (b) { Toast.makeText(MainActivity.this, "千机伞", Toast.LENGTH_LONG).show(); } } });
在使用Toast时, 三个参数分别是上下文环境(一般就是Activity.this) 输出的字符串 出现的时间长短还有就是不要忘了调用show()方法