VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > c#编程 >
  • 单选按钮RadioButton使用

1、单选按钮使用

在默认情况先,单选按钮显示为一个圆形图标,并且在该图标旁边放置一些说明性文字。在程序中,一般将多个单选按钮放置在按钮组里面,使用这些按钮表现出来某些功能,当用户选中某个单选按钮后,按钮组中的其他按钮将被自动取消选中状态。在Android中,单选按钮使用RadioButton表示,而RadioButton有是Button的子类,所有单选按钮可以直接使用Button支持的各种属性。

 

在Android中,可以使用两种方法向屏幕中添加单选按钮:一种是通过XML布局文件中使用<RadioButton>标记添加;另一种是在Java中,通过new关键字创建。在XML中通过<RadioButton>添加单选按钮如下:

 

 


  1.  
    <RadioButton
  2.  
    android:id="@+id/ID号"
  3.  
    android:text="显示文本"
  4.  
    android:layout_width="wrap_content"
  5.  
    android:layout_height="wrap_content"
  6.  
    android:checked="true|false"
  7.  
    >
  8.  
     
  9.  
    </RadioButton>

 

 

RadioButton组件中的android:checked 属性用于指定选中状态,属性值为true,表示选中;属性值为false时,表示取消选中,默认为false。

 

通常情况下,RadioButton组件需要与RadioGroup组件一起使用,组成一个单选按钮组。在XML布局文件中,添加RadioGroup组件的基本格式如下:

 


  1.  
    <RadioGroup
  2.  
    android:id="@+id/ID号"
  3.  
    android:layout_width="wrap_content"
  4.  
    android:layout_height="wrap_content"
  5.  
    android:orientation="horizontal"
  6.  
    >
  7.  
    <!-- 添加多个RadioGroup组件 -->
  8.  
    </RadioGroup>

 

2、获取单选按钮组中选中项的值

 

获取单选按钮组中选中项的值,通常存在以下两种情况:一种是在改变单选按钮组的值时获取,另一种是在单击其他按钮时获取。

1)在改变单选按钮组的值时获取

在改变单选按钮组的值来获取选中项的值时,首先需要获取单选按钮组,然后为其添加OnCheckedChangeListener,并在其onCheckedChange()方法中根据参数checkedIdea获取被选中的单选按钮,并通过其getText()方法获取该单选按钮对应的值。代码实现如下:

 


  1.  
    RadioGroup sex = (RadioGroup)findViewById(R.id.radoiGroup);
  2.  
    sex.setOnCheckedChangeListener(new OnCheckedChangeListener(){
  3.  
     
  4.  
    @Override
  5.  
    public void onCheckedChanged(RadioGroup group, int checkedId) {
  6.  
    // TODO Auto-generated method stub
  7.  
    RadioButton r = (RadioButton)findViewById(checkedId);
  8.  
    r.getText();//获取被选中的单选按钮的值
  9.  
    }
  10.  
    });

 

 

2)单击其他按钮时获取

单击其他按钮时获取选中项的值,首先需要在该按钮单击事件监听器的onClick()方法中,通过for循环语句遍历当前单选按钮组,并根据被遍历到的单选按钮组的isChecked()方法判断该按钮是否被选中,当被选中时,通过单选按钮的getText()方法获取对应的值。

 


  1.  
    final RadioGroup sex = (RadioGroup)findViewById(R.id.radoiGroup);
  2.  
    Button submitBtn = (Button)findViewById(R.id.button);
  3.  
    submitBtn.setOnClickListener(new OnClickListener(){
  4.  
     
  5.  
    @Override
  6.  
    public void onClick(View arg0) {
  7.  
    // TODO Auto-generated method stub
  8.  
    for(int i=0; i<sex.getChildCount(); i++){
  9.  
    RadioButton r = (RadioButton)sex.getChildAt(i);
  10.  
    if(r.isChecked()){
  11.  
    r.getText();
  12.  
    break;
  13.  
    }
  14.  
    }
  15.  
    }
  16.  
    });
 

 

 


相关教程