ui_radio_button
ui_radio_button 模块提供单选按钮组件,支持单选状态切换与互斥选择。
Class Summary
OHOS::UIRadioButton
单选按钮组件,同一名称的单选按钮组中仅允许选中一个选项
- 构造:
UIRadioButton(const char* name) -
成员函数:
接口名称 功能简述 UIRadioButton(args...) 构造单选按钮实例并设置名称 GetViewType 获取组件类型 OnPreDraw 绘制前预处理,判断是否需要执行绘制 OnDraw 执行单选按钮的绘制 OnClickEvent 处理点击事件,切换选中状态 SetName 设置单选按钮名称 GetName 获取单选按钮名称 -
使用包含头文件:
#include "components/ui_radio_button.h" - 声明头文件:
middleware/services/gui/uikit/ui/interfaces/kits/components/ui_radio_button.h - 公有运算符:无
- 继承关系:UICheckBox
- 嵌套类型:无
- 模板形参:无
Functions
OHOS::UIRadioButton
UIRadioButton(args...)
UIRadioButton(const char* name)
功能说明
- 构造 UIRadioButton 对象,绑定指定名称
- 同名单选按钮属于同一组,组内仅允许选中一个
- 传入
nullptr时构造无名单选按钮实例
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| name | const char* | 单选按钮名称,用于分组标识 | 有效字符串指针或 nullptr |
GetViewType
UIViewType GetViewType() const override
功能说明
- 获取当前组件的类型标识
- 返回值为 UI_RADIO_BUTTON,用于区分其他 UI 组件
- 该方法为 const 成员函数,不修改对象状态
返回值
- 返回类型:
UIViewType
返回组件类型标识
| 返回值 | 触发场景 |
|---|---|
| UI_RADIO_BUTTON | 当前组件为单选按钮类型 |
OnPreDraw
bool OnPreDraw(Rect& invalidatedArea) const override
功能说明
- 绘制前回调,判断是否需要跳过当前组件的绘制流程
- 该方法始终返回 false,表示不跳过绘制
- 该方法为 const 成员函数,不修改对象状态
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| invalidatedArea | Rect& | 入参引用,无效区域矩形 | 有效的 Rect 对象 |
返回值
- 返回类型:
bool
返回是否跳过绘制
| 返回值 | 触发场景 |
|---|---|
| false(0) | 不跳过绘制,继续执行 OnDraw |
OnDraw
void OnDraw(BufferInfo& gfxDstBuffer, const Rect& invalidatedArea) override
功能说明
- 执行单选按钮的绘制操作
- 根据是否设置了自定义图片资源,选择图片绘制或圆形绘制模式
- 圆形绘制模式下,绘制外圈与内圈圆弧以表示选中/未选中状态
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| gfxDstBuffer | BufferInfo& | 入参引用,图形渲染目标缓冲区 | 有效的 BufferInfo 对象 |
| invalidatedArea | const Rect& | 入参只读引用,需要重绘的区域矩形 | 有效的 Rect 对象 |
OnClickEvent
bool OnClickEvent(const ClickEvent& event) override
功能说明
- 处理单选按钮的点击事件,将当前按钮置为选中状态
- 同时遍历视图树,将同名单选按钮组内其他按钮置为未选中状态
- 返回事件是否被消费
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| event | const ClickEvent& | 入参只读引用,点击事件对象 | 有效的 ClickEvent 对象 |
返回值
- 返回类型:
bool
返回事件是否被消费
| 返回值 | 触发场景 |
|---|---|
| true(1) | 点击事件被消费 |
| false(0) | 点击事件未被消费 |
SetName
void SetName(const char* name)
功能说明
- 设置单选按钮的名称,同名按钮属于同一单选组
- 设置时会复制名称字符串,调用者无需保持原始字符串生命周期
- 传入 nullptr 时直接返回,不修改当前名称
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| name | const char* | 入参指针,待设置的名称字符串 | 有效字符串指针,长度不超过 MAX_TEXT_LENGTH;可为 nullptr |
GetName
const char* GetName() const
功能说明
- 获取单选按钮的名称
- 同名单选按钮属于同一组,组内仅允许选中一个
- 该方法为 const 成员函数,不修改对象状态
返回值
- 返回类型:
const char*
返回单选按钮名称字符串指针
| 返回值 | 触发场景 |
|---|---|
| 非 nullptr | 已通过 SetName 设置名称 |
| nullptr | 未设置名称或名称设置失败 |