單選按鈕RadioButton在Android平台上也應用的非常多,例如一些選擇項目的時候,會用到單選按鈕,實現單選按鈕由兩部分組成,也就是RadioButton和RadioGroup配合使用。
RadioButton的單選按鈕;
RadioGroup是單選組合框,用於將RadioButton框起來;
在沒有RadioGroup的情況下,RadioButton可以全部都選中;
在沒有RadioGroup的情況下,RadioButton可以全部都選中;
在沒有RadioGroup的情況下,RadioButton可以全部都選中;
在沒有RadioGroup的情況下,RadioButton可以全部都選取;
在沒有RadioGroup的情況下,RadioButton可以全部都選取;
在沒有RadioGroup的情況下,RadioButton可以全部都選取;
在沒有RadioGroup的情況下,RadioButton可以全部都選取;
注意:單選按鈕的事件監聽聽用setOnCheckedChangeListener來對單選按鈕進行監聽
例子:
一道選擇題,選擇哪個城市美女最多,當然,這個就是為了測試
RadioTest.javapackage org.loulijun.radio; import android.app.Activity; import android.os.Bundle; import android.view.Gravity; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.TextView; import android.widget.Toast; public class RadioTest extends Activity { /** Called when the activity is first created. */ TextView textview; RadioGroup radiogroup; RadioButton radio1,radio2,radio3,radio4; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); textview=(TextView)findViewById(R.id.textview1); radiogroup=(RadioGroup)findViewById(R.id.radiogroup1); radio1=(RadioButton)findViewById(R.id.radiobutton1); radio2=(RadioButton)findViewById(R.id.radiobutton2); radio3=(RadioButton)findViewById(R.id.radiobutton3); radio4=(RadioButton)findViewById(R.id.radiobutton4); radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { // TODO Auto-generated method stub if(checkedId==radio2.getId()) { DisplayToast("正确答案:"+radio2.getText()+",恭喜你,回答正确!"); }else { DisplayToast("请注意,回答错误!"); } } }); } public void DisplayToast(String str) { Toast toast=Toast.makeText(this, str, Toast.LENGTH_LONG); toast.setGravity(Gravity.TOP,0,220); toast.show(); } }strings.xml檔案
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">哪个城市美女多?</string> <string name="app_name">单选按钮测试</string> <string name="radiobutton1">杭州</string> <string name="radiobutton2">成都</string> <string name="radiobutton3">重庆</string> <string name="radiobutton4">苏州</string> </resources>main.xml檔案:注意,這裡面,4個RadioButton包含在RadioGroup中
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" android:id="@+id/textview1" /> <RadioGroup android:id="@+id/radiogroup1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:layout_x="3px" > <RadioButton android:id="@+id/radiobutton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/radiobutton1" /> <RadioButton android:id="@+id/radiobutton2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/radiobutton2" /> <RadioButton android:id="@+id/radiobutton3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/radiobutton3" /> <RadioButton android:id="@+id/radiobutton4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/radiobutton4" /> </RadioGroup> </LinearLayout>
運行結果如下:假會提示錯誤的Toast