Android基础——RadioGroup

 

RadioGroup单选按钮用法,还是先看效果图

先中后,点RadioGroup测试按钮,可在标题栏显示选择结果,点清除可以清除选择。
下面上代码,main.xml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<RadioGroup
	android:layout_width="fill_parent"
	android:layout_height="wrap_content"
    android:orientation="vertical"
    android:checkedButton="@+id/b1"
    android:id="@+id/RG">
<!--默认选中b1-->
    <RadioButton 
    	android:text="1"
    	android:id="@+id/b1"
    />
     <RadioButton 
    	android:text="2"
    	android:id="@+id/b2"
    />
     <RadioButton 
    	android:text="3"
    	android:id="@+id/b3"
    />
</RadioGroup>
<Button 
	android:layout_width="fill_parent"
	android:layout_height="wrap_content"
	android:id="@+id/show"
	android:text="RadioGroup测试"
/>
<Button 
	android:layout_width="fill_parent"
	android:layout_height="wrap_content"
	android:id="@+id/clear"
	android:text="清除"
/>

程序代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package com.pocketdigi;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;
 
public class main extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setTitle("RadioGroup测试");
        setContentView(R.layout.main);
        RGDemo();
    }
    RadioGroup rg;
    RadioButton b1;
    RadioButton b2;
    RadioButton b3;
    public void RGDemo(){
    	rg=(RadioGroup)findViewById(R.id.RG);
    	b1=(RadioButton)findViewById(R.id.b1);
    	b2=(RadioButton)findViewById(R.id.b2);
    	b3=(RadioButton)findViewById(R.id.b3);
    	Button clr=(Button)findViewById(R.id.clear);
    	clr.setOnClickListener(clear);
    	Button echo=(Button)findViewById(R.id.show);
    	echo.setOnClickListener(show);
    }
    private Button.OnClickListener clear=new OnClickListener(){
 
		@Override
		public void onClick(View v) {
			// TODO Auto-generated method stub
			rg.clearCheck();
			setTitle("RadioGroup测试");
		}
 
    };
    private OnClickListener show=new OnClickListener(){
 
		@Override
		public void onClick(View v) {
			// TODO Auto-generated method stub
			if(b1.isChecked()){
				setTitle("1");
			}
			if(b2.isChecked()){
				setTitle("2");
			}
			if(b3.isChecked()){
				setTitle("3");
			}
		}
 
    };
}

RadioGroup有一个onCheckChangeListener监听器,可以通过监听器的onCheckedChanged方法捕捉到点击事件,onCheckedChanged方法会传入一个int型的checkedId,可以通过对比传入的checkedId和RadioButton的ID,来确定被点中的选项。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){
 
			@Override
			public void onCheckedChanged(RadioGroup group, int checkedId) {
				// TODO Auto-generated method stub
				if(checkedId==b1.getId()){
					Toast.makeText(main.this,"b1选中", Toast.LENGTH_LONG).show();
				}
				if(checkedId==b2.getId()){
					Toast.makeText(main.this,"b2选中", Toast.LENGTH_LONG).show();
				}
				if(checkedId==b3.getId()){
					Toast.makeText(main.this,"b3选中", Toast.LENGTH_LONG).show();
				}
 
 
			}
 
        });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值