1 单选按钮(RadioButton)的基本概念
2 RadioGroup与RadioButton
2 RadioGroup与RadioButton
3 OnClickListener与OnCheckedChangeListener监听器
什么是RadioButton?
上面图片所示就是两组单选按钮。
如何创建1组单选按钮?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<RadioGroup
android:id="@+id/radioGroupId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<RadioButton
android:id="@+id/maleId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="male"/>
<RadioButton
android:id="@+id/femaleId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="female"/>
</RadioGroup>
</LinearLayout>
效果如下:
绑定监听器,使用它。
直接使用RadioGroup监听器
class RadioGroupListener implements OnCheckedChangeListener{
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
if(checkedId == maleButton.getId()){
System.out.println("maleButton");
}else if (checkedId == femaleButton.getId()) {
System.out.println("femaleButton");
}
}
}
绑定后就可以使用了。
实验:定义两组单选按钮,选中上面的单选按钮,相应的下面一组对应位置的单选按钮也被选上。
使用setChecked进行选中单选按钮
class RadioGroupListener implements OnCheckedChangeListener{
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
if(checkedId == maleButton.getId()){
System.out.println("maleButton");
strongButton.setChecked(true);
}else if (checkedId == femaleButton.getId()) {
System.out.println("femaleButton");
weakButton.setChecked(true);
}
}
}
效果如下: