安卓界面组件---单选复选按框

    安卓界面UI为开发者提供了单选复选框,单选框和复选框继承了安卓的普通按钮,所以他们可以直接使用普通按钮的xml基本属性。他们与普通按钮区别在于提供了可以选中的功能,同时二者之间的区别是:单选按钮在按钮组中,当用户点击选择以后,这个按钮组就必须有一个被选中,只能改选,无法撤销(所以单独的一个单选框功能上很尴尬,点击以后状态不能再更改,很僵硬);复选框可以提供复选功能,一组中可以多个被选中,并且能够全部撤销。

一   单选按钮属性

    由于单选按钮直接继承了普通按钮,所以它可以使用普通按钮的所有属性,因此:xml属性就不介绍了,大家可以在eclipse当中操作一下。在组件使用上,一般推荐界面添加单选按钮组<RadioGroup>,之后可以向里面添加单个的<RadioButton>或是减少单选按钮。如下图:

    单选按钮事件监听:1>由于单选按钮是包裹在<RadioGroup>中,我们可以对组件<RadioGroup>进行监听。

                             2><RadioGroup>里面的单选按钮作为独立的组件,都能够实现监听接口,实现监听。

代码举例:(<RadioGroup>和<RadioButton>各自实现监听)

/*
*通过RadioGroup 进行监听,接口内部onCheckedChanged中实现我们需要的功能
*/

 RadioGroup sex = (RadioGroup)findViewById(R.id.radioGroup1);
        sex.setOnCheckedChangeListener(new OnCheckedChangeListener() {
            
            @Override
public void onCheckedChanged(RadioGroup radioGroup1, int checkedid) {
                
        RadioButton r = (RadioButton)findViewById(checkedid);
        r.getText();
    }
});



/*
*通过RadioButton 进行监听,查找所有的RadioButton 寻找选中的单选按钮
*/

 final RadioGroup sex = (RadioGroup)findViewById(R.id.radioGroup1);
 Button button = (Button)findViewById(R.id.button1);
 button.setOnClickListener(new OnClickListener() {
            
            @Override
     public void onClick(View v) {
    for(int i = 0;i < sex.getChildCount();i ++){
       RadioButton r = (RadioButton)sex.getChildAt(i);
        if(r.isChecked()){
            r.getText();
            break;
        }
    }
                
    }
});

 

二    复选框属性

         复选框是Button子类,能够使用Button的属性。与单选按钮不同的是复选框能够进行多行设置,每个复选框能够单独的选中或取消选中状态。

         由于单个复选框能够单独选中或是不选中,因此事件监听上要单独设置监听。

final CheckBox cb = (CheckBox)findViewById(R.id.checkBox1);
cb.setOnCheckedChangeListener(new OnCheckedChangeListener() {
            
    @Override
public void onCheckedChanged(CompoundButton buttonView, boolean isCheched) {
        if(cb.isChecked()){
            cb.getText();
        }
                
    }
});

 

      总结:水平有限,请留言批评指正!

转载于:https://www.cnblogs.com/divingpig/p/6440831.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值