前言:

使用RadioGroup就可以在选择情况多的时候,简化代码

RadioGroup

使用互斥选择时,会使用RadioGroup标签下面RadioButton,如下面的代码:(这样写下来,男和女的选择时垂直的,要想水平的话可以在RadioGroup中添加android:orientation="horizontal")

 <RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:id="@+id/radiogroup">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/nan"
android:text="男"/>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/nv"
android:text="女"/>
</RadioGroup>

在Java中的代码是

 public class MainActivity extends AppCompatActivity {
private RadioGroup radiogroup;
private RadioButton nan,nv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
nan=(RadioButton)findViewById(R.id.nan);
nv=(RadioButton)findViewById(R.id.nv);
radiogroup=(RadioGroup)findViewById(R.id.radiogroup);
radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener(){
@Override
public void onCheckedChanged(RadioGroup group, int checkId) {
switch (checkId){
case R.id.nan:
Toast.makeText(MainActivity.this,"你选择的是:"+nan.getText(),Toast.LENGTH_SHORT).show();
break;
case R.id.nv:
Toast.makeText(MainActivity.this,"你选择的是:"+nv.getText(),Toast.LENGTH_SHORT).show();
break;
default:
break;
}
}
});
}
}

此时的setOnCheckedChangeListener(设置监听器)    OnCheckedChangeListener(监听器)     onCheckedChanged(抽象方法)和RadioButton中的名称一样,但是上面的哪些是在RadioGroup中的,而且onCheckedChanged(抽象方法)不同,RadioGroup下的是

 public void onCheckedChanged(RadioGroup group, int checkId) {}

RadioButton下的是

 public void onCheckedChanged(CompoundButton buttonView, boolean isChecked){}

方法的名称相同,但是参数不同

RadioGroup的使用的更多相关文章

  1. Android RadioGroup和RadioButton详解

    实现RadioButton由两部分组成,也就是RadioButton和RadioGroup配合使用.RadioGroup是单选组合框,可以容纳多个RadioButton的容器.在没有RadioGrou ...

  2. RadioGroup 和 ViewPager 绑定 实现切换

    package com.jereh.helloworld.activity.day12; import android.app.Activity; import android.os.Bundle; ...

  3. RadioGroup实现导航栏

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  4. ViewPager+RadioGroup实现标题栏切换,Fragment切换

    1.说明: 在使用RadioGroup做标题栏切换的时候,跟ViewPager的滑动有冲突,最后查看了源码+断点调试解决了一些碰到的问题,写一篇博客总结一下,有同样需求的朋友可以借鉴一下,自己以后有用 ...

  5. RadioGroup、RadioButton、CheckBox、Toast用法

    xml布局文件如下: <RadioGroup android:id="@+id/sex" android:layout_width="wrap_content&qu ...

  6. CompoundButton.OnCheckedChangeListener与RadioGroup.OnCheckedChangeListener冲突

    当RadioGroup与CompoundButton同时存在且都要监听事件时CompoundButton.OnCheckedChangeListener与RadioGroup.OnCheckedCha ...

  7. Fragment配合RadioGroup实现点击切换布局

    这里用了 compile 'com.jakewharton:butterknife:7.0.1' compile 'org.greenrobot:eventbus:3.0.0' MainActivit ...

  8. android radiogroup样式(设置切换背景与文字颜色)

    main.xml <RadioGroup android:id="@+id/radioGroup1" android:layout_width="wrap_cont ...

  9. Android入门(八):使用RadioGroup 和RadioButton组件建立单选清单

    这一章,我们学习RadioGroup 和RadioButton组件,我们新建一个项目,编码过程与前几章的项目类似. 1.建立字符串资源文件strings.xml: <resources> ...

  10. Android自定义控件----RadioGroup实现APP首页底部Tab的切换

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

随机推荐

  1. Spring Boot + MyBatis + PostgreSql

    Maven构建项目 1.访问http://start.spring.io/ 2.选择构建工具Maven Project.Spring Boot版本1.3.6以及一些工程基本信息,点击“Switch t ...

  2. bfc作用

    作用 1.清浮动 2.不被浮动元素覆盖 3.阻止父子margin传递 触发条件: 1.float不为none 2.position不为static或relative 3.display:inline- ...

  3. uniGUI之uniColorButton(21)

    uniColorButton相当于VCL的ColorDialog1 若Palette 为空,则为系统自带颜色.

  4. netsh命令获取wifi历史连接密码

    首先[win+r]快捷键打开运行,输入cmd.或点击左下角win-运行-cmd 1.netsh wlan show profiles //列出所有的ap名称 2.netsh wlan show pro ...

  5. Zabbix在Docker中的应用和监控

    目录 Zabbix在Docker中的应用和监控 一.如何使Zabbix跑在Docker里 1.Docker基础环境配置 2.Docker-compose安装配置 3.启动zabbix server 4 ...

  6. mycat 主从复制,读写分离,

    1.mycat 主从复制 https://blog.csdn.net/qq_35992900/article/details/80599976 2.mycat 读写分离 https://blog.cs ...

  7. 3(计算机网络)ifconfig:最熟悉又陌生的命令行

    当面试听到这个问题的时候,面试者常常会觉得走错了房间.我面试的是技术岗位啊,怎么问这么简单的问题? 的确,即便没有专业学过计算机的人,只要倒腾过电脑,重装过系统,大多也会知道这个问题的答案:在 Win ...

  8. 使用input:file控件在微信内置浏览器上传文件返回未显示选择的文件

    使用input:file控件在微信内置浏览器上传文件返回未显示选择的文件 原来的写法: <input type="file" accept="image/x-png ...

  9. 069、Java面向对象之对象引用传递

    01.代码如下: package TIANPAN; class Book { // 定义一个新的类 String title; // 书的名字 double price; // 书的价格 public ...

  10. CentOS7虚拟机配置、Hadoop搭建、wordCount DEMO运行

    安装虚拟机 最开始先安装虚拟机,我是12.5.7版本,如果要跟着我做的话,版本最好和我一致,不然后面可能会出一些莫名其妙的错误,下载链接如下(注册码也在里面了): 链接:https://pan.bai ...