Android-基本控件(CheckBox,RadioGroup,RadioButton)

本文详细介绍了Android开发中常用的UI控件,包括CheckBox、RadioGroup和RadioButton的基本布局实现及控制方式,并提供了具体的代码实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.回顾

   上篇总结了toggleButton, AutoCompleteTextView,MultiAutoCompleteTextView 三个控件

2.知识点

  (1)CheckBox

  (2)RadioGroup

  (3)RadioButton

3.CheckBox 

   基本布局实现:

<LinearLayout 
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:orientation="horizontal">
    <CheckBox
        android:id="@+id/ckb_one"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:text="编程" />

    <CheckBox
        android:id="@+id/ckb_two"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="打球" />
  </LinearLayout>


  控制实现:

//4.CheckBox 复选框 (样式 使用 style)
	    //01.初始化控件
	    ckb_one=(CheckBox)findViewById(R.id.ckb_one);
	    ckb_two=(CheckBox)findViewById(R.id.ckb_two);
	    //02.设置监听(外部独立监听类)
	    ckb_one.setOnCheckedChangeListener(new ckbListener());
	    ckb_two.setOnCheckedChangeListener(new ckbListener());

  外部独立监听类实现:

//4.CheckBox 复选框实现
	class ckbListener implements CompoundButton.OnCheckedChangeListener{

		@Override
		public void onCheckedChanged(CompoundButton buttonView,
				boolean isChecked) {
			// checkBox操作
			if(isChecked){
			    tv.setText(buttonView.getText()+" | "+"选中了");
			}else{
				 tv.setText(buttonView.getText()+" | "+"没有选中");
			}
		}
		
	}


4.RadioGroup 和 RadioButton

  基本布局实现:

 <RadioGroup 
         android:id="@+id/radio_group"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_marginTop="20dp"
         android:orientation="horizontal">
         
         <RadioButton 
             android:id="@+id/radio_man"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:checked="true"
             android:text="男"
             />
         <RadioButton 
             android:id="@+id/radio_feman"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:text="女"
             />
         
     </RadioGroup>


  控制实现:

//5.RedioGroup 和 RedioButton
	    //初始化控件
	    radio_group=(RadioGroup)findViewById(R.id.radio_group);
	    //设置监听事件 (匿名内部类)
	    radio_group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
			
			@Override
			public void onCheckedChanged(RadioGroup group, int checkedId) {
				// RadioButton 
				if(checkedId==R.id.radio_man){
					RadioButton rb_man=(RadioButton) findViewById(R.id.radio_man);
					tv.setText(rb_man.getText());
				}else{
					RadioButton radio_feman=(RadioButton) findViewById(R.id.radio_feman);
					tv.setText(radio_feman.getText());
				}
				
			}
		});


6.一个问题

RadioGroup.OnCheckedChangeListener 和 CompoundButton.OnCheckedChangeListener 导入包出错,且冲突?

解决:删掉导入的OnCheckedChangeListener 包,分别使用new RadioGroup.OnCheckedChangeListener()和 new CompoundButton.OnCheckedChangeListener()即可!






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值