android.widget.RadioButton 單選按鈕
android.widget.RadioButton,譯為單選按鈕,通常情況下與RadioGroup一起使用
一、結構
public class RadioButton extends CompoundButton
java.lang.Object
android.view.View
android.widget.TextView
android.widget.Button
android.widget.CompoundButton
android.widget.RadioButton
二、概述
單選按鈕是一種雙狀態的按鈕,可以選擇或不選中。在單選按鈕沒有被選中時,用戶能夠按下或點擊來選中它。但是,與複選框相反,用戶一旦選中就不能夠取消選中(譯者注:可以通過代碼來控製,界麵上點擊的效果是一旦選中之後就不能取消選中了)。
多個單選按鈕通常與RadioGroup同時使用。當一個單選組(RadioGroup)包含幾個單選按鈕時,選中其中一個的同時將取消其它選中的單選按鈕。(譯者注:示例參見這裏)
三、公共方法
public void toggle ()
將單選按鈕更改為與當前選中狀態相反的狀態。
如果這個單選按鈕已經選中,這個方法將不切換單選按鈕。(譯者注:請看源碼:
例子
public class MyRadoiButtonActivity extends Activity {
TextView textview;
RadioGroup radiogroup;
RadioButton radio1,radio2,radio3,radio4;
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() {
public void onCheckedChanged(RadioGroup group, int checkedId) {
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();
}
}
string.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>
mian.xml
<RadioGroup
android:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_x="3px"
>
<RadioButton
android:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton1"
/>
<RadioButton
android:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton2"
/>
<RadioButton
android:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton3"
/>
<RadioButton
android:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiobutton4"
/>
</RadioGroup>




最後更新:2017-04-03 12:55:47