【Android】开发入门:RadioButton和ToggleButton控件使用介绍
我们知道Button中有许多按钮的种类,下面介绍RadioButton和ToggleButton、Switch控件的使用方法。
一、RadioButton控件:单选按钮,一般用于选择性别之用。
1、首先设计view视图的样式。推荐先用视图模式再用代码模式编写。
<RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/sex"
android:layout_toRightOf="@+id/sex"
android:orientation="horizontal" >
<RadioButton
android:id="@+id/radio0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:onClick="onRadioClicked"
android:text="男" />
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onRadioClicked"
android:text="女" />
<RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onRadioClicked"
android:text="保密" />
</RadioGroup>
2、创建Activity并编写onRadioClicked方法,实现RadioButton控件的功能。
public void onRadioClicked(View view) {
RadioButton button=(RadioButton)view;
boolean isChecked=button.isChecked();
switch (view.getId()) {
case R.id.radio0:
if(isChecked){
Toast.makeText(this, button.getText(), 1).show();
}
break;
case R.id.radio1:
if(isChecked){
Toast.makeText(this, button.getText(), 1).show();
}
break;
case R.id.radio2:
if(isChecked){
Toast.makeText(this, button.getText(), 1).show();
}
break;
default:
break;
}
}
二、ToggleButton控件:开关按钮,一般用于打开或关闭某项功能之用。
三、Switch控件:开关按钮,和ToggleButton控件一样,是它的新版,下面介绍主要以Switch为主。
1、首先创建view视图
<Switch
android:id="@+id/switch1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/radioGroup1"
android:layout_marginTop="29dp"
android:textOff="关闭"
android:textOn="打开"
android:text="开启震动"
android:onClick="onButtonSwitch"
/>
2、创建Activity并编写onButtonSwitch方法,实现Switch控件的功能。
public void onButtonSwitch(View view) {
boolean isChecked=((Switch)view).isChecked();
if(isChecked){
Toast.makeText(RadioActivity.this, "打开", 1).show();
}else{
Toast.makeText(RadioActivity.this, "关闭", 1).show();
}
}