当前位置: 首页 > news >正文

鸿蒙harmonyOS笔记:练习CheckBoxGroup获取选中的值

        除了视觉效果实现全选和反选以外,咱们经常需要获取选中的值,接下来看看如何实现。

核心步骤:

        1. 给 CheckBoxGroup 注册 onChange。
        2. CheckBox 添加 name 属性。
        3. 在 onChange 的回调函数中获取 选中的 name 属性。

事件:

名称功能描述
onChange (callback: (event:CheckboxGroupResult) => void )CheckboxGroup的选中状态或群组内的Checkbox的选
中状态发生变化时,触发回调。

CheckboxGroupResult对象说明: 

名称类型描述
nameArray群组内所有被选中的多选框名称。  name 属性
statusSelectStatus选中状态。

代码演示:

@Entry
@Component
struct CheckBoxGroupPage {
  fruits: string[] = ['西瓜', '西红柿', '西兰花', '西葫芦']
  @State selectedKeys: string [] = []//定义一个变量用于接收数据
  build() {
    Column() {
      Text('选中的是:' + this.selectedKeys)
      Row() {
        CheckboxGroup({
          group: 'food'//群组名称
        })
          .onChange((event: CheckboxGroupResult) => {
            console.log('event:', JSON.stringify(event))
            this.selectedKeys = event.name
          })
          .selectAll(true)//设置是否全选 默认值为:false  设置的是默认全选
        Text('全选')
      }
      Column() {
        ForEach(this.fruits, (item: string) => {
          Row() {
            Checkbox({
              name: item.toString(),//拿到的数据赋值给name
              group: 'food'//群组名称

            })
            Text(item)//内容
          }
        })
      }
      .padding({ left: 20 })
      .alignItems(HorizontalAlign.Start)
    }
    .padding(20)
    .alignItems(HorizontalAlign.Start)
  }
}

效果演示:

控制台效果: 

相关文章:

  • JavaScript 中的性能优化:从基础到高级技巧
  • C++实现求解24点游戏
  • 异步编程与流水线架构:从理论到高并发
  • docker安装redis
  • 深入解析计算机组成原理:从硬件架构到程序运行的本质
  • 【算法day18】合并两个有序链表——将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
  • 基于deepseek的智能语音客服【第四讲】封装milvus数据库连接池封装
  • Spring事务和事务传播机制
  • 浏览器自动携带cookie注意事项
  • 12:表的内外连接
  • LVGL学习1
  • 数据库练习2
  • 图像回归评价的常用指标
  • 个人学习编程(3-22) leetcode刷题
  • C++智能指针详解
  • 蓝桥杯备赛 背包问题
  • [项目]基于FreeRTOS的STM32四轴飞行器: 十一.MPU6050配置与读取
  • 建筑安全员考试:“实战演练” 关键词助力的答题提升策略
  • Sqlite3数据库
  • 客服机器人怎么才能精准的回答用户问题?
  • 上海数学教育及数学科普专家陈永明去世,享年85岁
  • 超级干细胞有助改善生育治疗
  • 加拿大驾车撞人事件遇难人数升到11人
  • 荣盛发展去年亏损约84.43亿元,要“过苦日子、紧日子”
  • 【社论】用生态环境法典守护生态文明
  • 首映|《人生开门红》:段子背后都是案子