Android单选框(RadioButton)

●使用Android单选框的时候,要用RadioGroup来分组

●选择RadioGroup里的单选框的时候,将调用RadioGroup的Check·()方法

●追加单选框被选择时处理的时候,

1.调用setOnCheckedChangeListener()方法,并把RadioGroup.OnCheckedChangeListener实例作为参数传入

2.在RadioGroup.OnCheckedChangeListener的onCheckedChanged()方法里,取得被选中

看一个小例子:

package com.xzy.demo.ui;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.Toast;

public class TestUI_demo001Activity extends Activity {

	private Button button;
	private RadioGroup rg;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		// 设置容器布局文件
		setContentView(R.layout.main);
		// 获得单选按钮组和button按钮
		rg = (RadioGroup) findViewById(R.id.RadioGroup1);
		button = (Button) findViewById(R.id.Button1);
		// 为按钮组绑定事件
		rg.setOnCheckedChangeListener(new OnCheckedChangeListener() {

			public void onCheckedChanged(RadioGroup group, int checkedId) {

				RadioButton r = (RadioButton) findViewById(checkedId);

				Toast.makeText(TestUI_demo001Activity.this,
						"你选择的是:" + r.getText(), 3000).show();

			}
		});
		// 为按钮绑定事件
		button.setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
				for (int i = 0; i < rg.getChildCount(); i++) {
					RadioButton r = (RadioButton) rg.getChildAt(i);
					if (r.isChecked()) {
						Log.i("单选按钮", (String) r.getText());
						Toast.makeText(TestUI_demo001Activity.this,
								r.getText(), 3000).show();
						break;
					}
				}

			}
		});
	}
}
布局文件:


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/background2"
    android:orientation="horizontal" >

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="性别"
        android:height="50px"
        />
    <RadioGroup
         android:id="@+id/RadioGroup1"
        android:layout_width ="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal" 
        >
        
        <RadioButton
            android:id="@+id/RadioButton1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="男" 
            android:checked="true"
            />
         <RadioButton
            android:id="@+id/RadioButton2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="女" 
            />
        </RadioGroup>
		<Button 
		     android:id="@+id/Button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="选择" 
		    />
</LinearLayout>
对于点击单选框和选择按钮,都会有相应的反应。

Android单选框(RadioButton)_第1张图片

你可能感兴趣的:(android)