摘要
作者:红目香薰 团队介绍:坚果派由坚果创建,团队拥有12个华为HDE以及若干其他领域的三十余位万粉博主运营。
分组按钮示例
HarmonyOS-UIAbitity-CheckboxGroup
多选框群组,用于控制多选框全选或者不全选状态。
接口
CheckboxGroup( options?: { group?: string } )
创建多选框群组,可以控制群组内的Checkbox全选或者不全选,相同group的Checkbox和CheckboxGroup为同一群组。
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
group | string | 否 | 群组名称。 |
属性
除支持通用属性外,还支持以下属性:
名称 | 参数类型 | 默认值 | 描述 |
---|---|---|---|
selectAll | boolean | false | 设置是否全选。 |
selectedColor | ResourceColor | - | 设置被选中或部分选中状态的颜色。 |
事件
除支持通用事件外,还支持以下事件:
名称 | 功能描述 |
---|---|
onChange (callback: (event: CheckboxGroupResult) => void ) | CheckboxGroup的选中状态或群组内的Checkbox的选中状态发生变化时,触发回调。 |
CheckboxGroupResult
名称 | 参数类型 | 描述 |
---|---|---|
name | Array<string> | checkBox名称。 |
status | SelectStatus | 选中状态。 |
SelectStatus枚举说明
名称 | 描述 |
---|---|
All | 群组多选择框全部选择。 |
Part | 群组多选择框部分选择。 |
None | 群组多选择框全部没有选择。 |
分组按钮示例
示例:
示例代码:
代码语言:text复制 // xxx.ets
@Entry
@Component
struct Index {
build() {
Scroll() {
Column() {
// 全选按钮
Flex({ justifyContent: FlexAlign.Start, alignItems: ItemAlign.Center }) {
CheckboxGroup({ group: 'checkboxGroup' })
.selectedColor(0xed6f21)
.onChange((itemName: CheckboxGroupResult) => {
console.info("全选内容是:" JSON.stringify(itemName))
})
Text('全选').fontSize(20)
}
// 选项1
Flex({ justifyContent: FlexAlign.Start, alignItems: ItemAlign.Center }) {
Checkbox({ name: 'checkbox1', group: 'checkboxGroup'})
.selectedColor(0x39a2db)
.onChange((value: boolean) => {
console.info('按钮1:' value)
})
Text('鲜花').fontSize(20)
}
// 选项2
Flex({ justifyContent: FlexAlign.Start, alignItems: ItemAlign.Center }) {
Checkbox({ name: 'checkbox2', group: 'checkboxGroup' })
.selectedColor(0x39a2db)
.onChange((value: boolean) => {
console.info('按钮2:' value)
})
Text('掌声').fontSize(20)
}
// 选项3
Flex({ justifyContent: FlexAlign.Start, alignItems: ItemAlign.Center }) {
Checkbox({ name: 'checkbox3', group: 'checkboxGroup' })
.selectedColor(0x39a2db)
.onChange((value: boolean) => {
console.info('按钮3:' value)
})
Text('赞美').fontSize(20)
}
}
}
}
}