Android 中文 API (34) —— RadioGroup

简介:

正文

  一、结构

    public class RadioGroup extends LinearLayout

 
 

java.lang.Object

  android.view.View

        android.view.ViewGroup

              android.widget.LinearLayout

                    android.widget.RadioGroup


 

  二、概述

    
 

  这个类用于创建一组按钮之间相互排斥的单选按钮组,在同一个单选按钮组中勾选一个按钮则会取消该组中其它已经勾选的按钮的选中状态。

    初始状态下,所有的单选按钮都未勾选,虽然不能取消一个特定的单选按钮的勾选状态,但可以通过单选按钮组去消除它的勾选状态,根据XML布局文件中的单选按钮的唯一ID去标识指定的选择信息。

 

  三、内部类
 

    Class              RadioGroup.LayoutParams    

    WRAP_CONTENT(包裹内容)的子组件在XML文件中没有指定相应的宽度和高度的话,可以使用的布局参数默认设置的默认设置

 

    Interface         RadioGroup.OnCheckedChangeListener

    当单选按钮组中的单选按钮的勾选状态发生改变时,所要调用的回调函数的接口类

 

  四、公共方法
 

public void addView (View child, int index, ViewGroup.LayoutParams params)

      使用指定的布局参数添加一个子视图

参数

                 child         所要添加的子视图

index         将要添加子视图的位置

params    所要添加的子视图的布局参数

                           

public void check (int id) 

        如果传递-1作为指定的选择标识符来清除单选按钮组的勾选状态,相当于调用clearCheck()操作

  参数

                id     该组中所要勾选的单选按钮的唯一标识符(id

              参见

                getCheckedRadioButtonId()

                clearCheck()

 

public void clearCheck () 

清除当前的选择状态,当选择状态被清除,则单选按钮组里面的所有单选按钮将取消勾选状态,getCheckedRadioButtonId()将返回null

              参见

                check(int)

                getCheckedRadioButtonId()

 

public RadioGroup.LayoutParams generateLayoutParams (AttributeSet attrs)   

基于提供的属性集合返回一个新的布局参数集合

参数

             attrs                   用于生成布局参数的属性

           返回值

             返回一个ViewGroup.LayoutParams或其子类的实例

 

public int getCheckedRadioButtonId ()  

返回该单选按钮组中所选择的单选按钮的标识ID,如果没有勾选则返回-1

              返回值

                返回该单选按钮组中所选择的单选按钮的标识ID

              参见

                check(int)

   clearCheck()

 

public void setOnCheckedChangeListener (RadioGroup.OnCheckedChangeListener listener)

注册一个当该单选按钮组中的单选按钮勾选状态发生改变时所要调用的回调函数

参数

             listener    当单选按钮勾选状态发生改变时所要调用的回调函数

                           

public void setOnHierarchyChangeListener (ViewGroup.OnHierarchyChangeListener listener)

注册一个当子内容添加到该视图或者从该视图中移除时所要调用的回调函数

参数

                            listener    当层次结构发生改变时所要调用的回调函数

 

  五、受保护方法
 

protected LinearLayout.LayoutParams generateDefaultLayoutParams ()

当布局为垂直方向时,将返回一个宽度为“填充父元素”(MATCH_PARENT),高度为“包裹内容”的布局参数集合,如果为水平方向时,将返回宽度为“包裹内容”,高度为“填充父元素”的布局参数集合

(match_parent即为fill_parent,public static final int FILL_PARENT/MATCH_PARENT = -1 )

        返回值

返回一个默认的布局参数集合

 

protected void onFinishInflate ()

当视图从XML中加载,且相应的子视图被添加之后,调用该方法,

即使子类重写了该方法,应该确保去调用父类的方法(通常放在方法在第一句),这样才能完成相应的调用参数

       返回值

返回一个默认的布局参数集合

 

  六、补充
 

  文章链接

  Android基础教程()----单选项框RadioGroup的综合应用

  Android UI设计 RadioGroup单选按钮用法

  Android 小項目之--猜名字有獎!RadionButton RadionGroup應用(附源碼)

    示例代码

      


本文转自over140 51CTO博客,原文链接:http://blog.51cto.com/over140/582637,如需转载请自行联系原作者

相关文章
|
2月前
|
移动开发 前端开发 Android开发
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
251 12
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
2月前
|
移动开发 JavaScript 应用服务中间件
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
221 5
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
2月前
|
移动开发 Rust JavaScript
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
552 4
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
3月前
|
开发工具 Android开发
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
511 11
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
|
2月前
|
移动开发 Android开发
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
135 0
|
3月前
|
Java 开发工具 Maven
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
206 6
|
5月前
|
安全 数据库 Android开发
在Android开发中实现两个Intent跳转及数据交换的方法
总结上述内容,在Android开发中,Intent不仅是活动跳转的桥梁,也是两个活动之间进行数据交换的媒介。运用Intent传递数据时需注意数据类型、传输大小限制以及安全性问题的处理,以确保应用的健壯性和安全性。
364 11
|
5月前
|
移动开发 Java 编译器
Kotlin与Jetpack Compose:Android开发生态的演进与架构思考
本文从资深Android工程师视角深入分析Kotlin与Jetpack Compose在Android系统中的技术定位。Kotlin通过空安全、协程等特性解决了Java在移动开发中的痛点,成为Android官方首选语言。Jetpack Compose则引入声明式UI范式,通过重组机制实现高效UI更新。两者结合不仅提升开发效率,更为跨平台战略和现代架构模式提供技术基础,代表了Android开发生态的根本性演进。
186 0
|
9月前
|
JavaScript Linux 网络安全
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
2076 77