Android基础控件之单选框(RadioButton)

14 篇文章 0 订阅

要完成单选框显示,我们需要使用到RadioGroup和RadioButton(单选框),

RadioGroup用于对单选框进行分组,相同组内的单选框只有一个单选框能被选中。(例子代码请见下方备注栏) 

RadioGroup.check(R.id.dotNet);将id名为dotNet的单选框设置成选中状态。

(RadioButton) findViewById(radioGroup.getCheckedRadioButtonId());//获取被选中的单选框。

调用setOnCheckedChangeListener()方法,处理单选框被选择事件,把RadioGroup.OnCheckedChangeListener实例作为参数传入  
界面设计

<?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" 
    > 
<RadioGroup android:id="@+id/radioGroup" 
  xmlns:android="http://schemas.android.com/apk/res/android" 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content"> 
<RadioButton android:id="@+id/java" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="java" /> 
    <RadioButton android:id="@+id/dotNet" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="dotNet" /> 
    <RadioButton android:id="@+id/php" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="PHP" /> 
</RadioGroup> 
</LinearLayout> 
处理程序: 
public void onCreate(Bundle savedInstanceState) { 
       ...... 
        RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radioGroup);  
        radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { 
            public void onCheckedChanged(RadioGroup group, int checkedId) { 
                RadioButton radioButton = (RadioButton) findViewById(checkedId); 
                Log.i(TAG, String.valueOf(radioButton.getText())); 
            } 
        }); 
}

另外附上一例:

private RadioButton homeBtn,catagoryBtn,carBtn,moreBtn,buyBtn;
		homeBtn = (RadioButton)findViewById(R.id.main_tab_home);
		catagoryBtn = (RadioButton)findViewById(R.id.main_tab_catagory);
		carBtn = (RadioButton)findViewById(R.id.main_tab_car);
		buyBtn = (RadioButton)findViewById(R.id.main_tab_buy);
		moreBtn = (RadioButton)findViewById(R.id.main_tab_more);
		
		OnClickListener handle =  new OnClickListener(){
			public void onClick(View v){
				switch(v.getId()){
				case R.id.main_tab_home:
					tabHost.setCurrentTabByTag("home");
					break;
				case R.id.main_tab_catagory:
					tabHost.setCurrentTabByTag("catagory");
					break;
				case R.id.main_tab_car:
					tabHost.setCurrentTabByTag("car");
					break;
				case R.id.main_tab_buy:
					tabHost.setCurrentTabByTag("buy");
					break;
				case R.id.main_tab_more:
					tabHost.setCurrentTabByTag("more");
					break;
				}
					
			}
		};
		
		homeBtn.setOnClickListener(handle);
		catagoryBtn.setOnClickListener(handle);
		carBtn.setOnClickListener(handle);
		buyBtn.setOnClickListener(handle);
		moreBtn.setOnClickListener(handle);


<RadioGroup 
	        	android:id="@+id/main_tab_group"
	         	android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="bottom"
                android:gravity="bottom"
                android:background="@drawable/main_navigation_background"
                android:orientation="horizontal"
                android:paddingTop="2.0dip">
	        <RadioButton 
	            android:id="@+id/main_tab_home"
	            android:checked="true"
	            style="@style/main_tab_bottom"
	            android:drawableTop="@drawable/main_navigation_home"
	            android:text="@string/main_navigation_home"/>
	        <RadioButton 
	            android:id="@+id/main_tab_catagory"
	            style="@style/main_tab_bottom"
	            android:drawableTop="@drawable/main_navigation_catagory"
	            android:text="@string/main_navigation_catagory"/>
	        <RadioButton
	            android:id="@+id/main_tab_car"
	            style="@style/main_tab_bottom"
	            android:drawableTop="@drawable/main_navigation_car"
	            android:text="@string/main_navigation_car"/>
	        <RadioButton
	            android:id="@+id/main_tab_buy"
	            style="@style/main_tab_bottom"
	            android:drawableTop="@drawable/main_navigation_personal"
	            android:text="@string/main_code_buy"/>
	        <RadioButton
	            android:id="@+id/main_tab_more"
	            style="@style/main_tab_bottom"
	            android:drawableTop="@drawable/main_navigation_more"
	            android:text="@string/main_navigation_more"/>
	    </RadioGroup>


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值