RadioButton单选按钮扩展
本页面收录了多个RadioButton(单选按钮)扩展,为App Inventor应用提供了单选按钮功能。单选按钮允许用户从一组选项中选择唯一的一个选项。
扩展列表
1. UrsAI2RadioButton
下载和安装
- UrsAI2RadioButton扩展: UrsAI2RadioButton.aix
- 示例应用: RadioButtonExample.aia
功能概述
UrsAI2RadioButton扩展将CheckBox组件转换为RadioButton组件,提供真正的单选功能:
- 将CheckBox转换为RadioButton外观
- 确保组内只有一个选项被选中
- 支持嵌套布局中的RadioButton
- 保持了WYSIWYG(所见即所得)的优势
- 支持边框设置和间距调整
使用原理
MIT App Inventor不提供RadioButton组件,但CheckBox的行为与RadioButton非常相似。在Android操作系统中,两个控件都派生自相同的基类(CompoundButton)。此扩展将CheckBox转换为RadioButton。
使用方法
- 布局设置: 将要转换的CheckBox放置在一个布局(arrangement)中
- 初始化: 在Screen.Initialize事件中调用SetLayout函数
- 分组: 每个RadioButton组需要一个独立的扩展实例

示例初始化代码:
when Screen1.Initialize
do
// 设置布局为RadioButton组
call UrsAI2RadioButton1.SetLayout HorizontalArrangement1 true

IncludeSubLayouts参数:
true: 包含子布局中的CheckBoxfalse: 仅包含直接在布局中的CheckBox
属性
- 底部间距增加
- 增加所有受影响RadioButton的底部内边距。
- 左侧间距增加
- 增加所有受影响RadioButton的左侧内边距。
- 右侧间距增加
- 增加所有受影响RadioButton的右侧内边距。
- 顶部间距增加
- 增加所有受影响RadioButton的顶部内边距。
方法
- 设置边框(组件,颜色,宽度,扩展内边距)
- 在指定组件周围绘制指定颜色和宽度(单位:DIP)的边框。边框绘制在组件区域内,这会减少组件内容与其边缘之间的距离。如果设置扩展内边距为true,将通过扩展内边距来补偿。
- 设置布局(布局,包含子布局)
- 将指定布局注册为RadioButton组,并将其中包含的CheckBox转换为RadioButton。如果包含子布局为true,则子布局中的CheckBox也会被包含在内。每个RadioButton组必须使用扩展的独立实例。第二次调用SetLayout没有效果。
事件
- CheckBox被选中()
- RadioButton(CheckBox)的Changed事件仅在RadioButton被选中时触发,即状态变为checked = true时触发。
使用示例
右对齐RadioButton实现: 通过使用无文本的CheckBox,文本通过Label添加。CheckBox和Label都排列在HorizontalArrangement中。

运行效果展示:
| 开发者模式 | 运行时主题=Classic | 运行时主题=Default |
|---|---|---|
![]() |
![]() |
![]() |
2. AppyBuilder RadioButtons
开发者: AppyBuilder 来源: [现有扩展库]
下载和安装
- AppyBuilder RadioButtons扩展: com.appybuilder.RadioButtons.aix
- 测试应用: TestRadioButtons.aia
功能概述
AppyBuilder的RadioButton扩展提供了另一种单选按钮实现方案:
- 简单易用的RadioButton组件
- 支持分组设置
- 提供完整的事件处理
基本用法

(详细用法待完善)
RadioButton使用指南
布局设计原则
- 组内唯一性: 确保每个RadioButton组内只有一个选项能被选中
- 逻辑分组: 使用布局容器将相关的RadioButton组织在一起
- 清晰标识: 每个RadioButton都应有明确的标签文本
- 合理间距: 使用间距属性优化视觉效果
最佳实践
- 初始化设置: 在Screen.Initialize中设置RadioButton组
- 事件处理: 使用Changed事件响应用户选择
- 状态管理: 在需要时获取当前选中的RadioButton
- 样式统一: 保持应用内RadioButton样式的一致性
常见应用场景
- 设置选项: 语言选择、主题设置等
- 表单选择: 性别、年龄段等单选信息
- 模式切换: 单选/多选模式切换
- 配置选项: 各种配置参数的选择
故障排除
常见问题
Q: RadioButton不能正常工作? A: 确保正确调用了SetLayout函数,并且CheckBox都在指定的布局中。
Q: 多个RadioButton能同时被选中? A: 检查是否所有RadioButton都在同一个布局中,并且只调用了一次SetLayout。
Q: RadioButton样式显示异常? A: 尝试调整IncreasePadding属性来改善间距和显示效果。
Q: 事件不触发? A: 确保使用了正确的事件处理程序,注意RadioButton的Changed事件只在选中时触发。



扫码添加客服咨询