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

鸿蒙:用Toggle组件实现选择框、开关样式

1、前言

在鸿蒙app开发过程中,我们经常会遇到让用户勾选选项、打开开关等操作。那么用Toggle组件就可以实现这些功能。

2、参考文档

https://developer.huawei.com/consumer/cn/doc/harmonyos-references/ts-basic-components-togglehttps://developer.huawei.com/consumer/cn/doc/harmonyos-references/ts-basic-components-toggle

3、核心代码

 // 创建开关类型的Toggle组件// type: ToggleType.Switch 表示是开关样式// isOn: $$this.isOn 表示双向绑定isOn状态,开关操作会同步更新isOn的值Toggle({ type: ToggleType.Switch, isOn: $$this.isOn }).selectedColor('#007DFF')    // 设置开关选中时的颜色(蓝色).switchPointColor('#FFFFFF') // 设置开关滑块的颜色(白色)// 创建复选框类型的Toggle组件// type: ToggleType.Checkbox 表示是复选框样式// 同样双向绑定isOn状态,与开关组件共享同一状态Toggle({ type: ToggleType.Checkbox, isOn: $$this.isOn }).selectedColor('#007DFF')    // 设置复选框选中时的颜色(蓝色).switchPointColor('#FFFFFF') // 设置复选框内部图标的颜色(白色)

4、运行效果

5、完整代码

@Entry
@ComponentV2
struct Index {// @Local 装饰器声明这是一个组件内部状态变量,用于管理组件的UI状态// isOn 表示开关状态,true为打开,false为关闭,初始值为true@Local isOn: boolean = true;// @Builder 装饰器声明这是一个UI构建函数,用于封装可复用的UI片段// 作用:根据isOn状态显示"打开"或"关闭"文本@BuildertoggleBuilder() {Text(this.isOn ? '打开' : '关闭')  // 三元表达式:根据isOn状态切换显示文本.fontSize(24)                     // 设置字体大小为24.fontWeight(FontWeight.Bold) // 设置字体为粗体}// build方法是组件的UI构建入口,用于定义组件的布局和内容build() {// Column为垂直布局容器,{ space: 20 }表示子组件之间的垂直间距为20Column({ space: 20 }) {// 调用toggleBuilder构建函数,显示当前状态文本(上方)this.toggleBuilder()// 创建开关类型的Toggle组件// type: ToggleType.Switch 表示是开关样式// isOn: $$this.isOn 表示双向绑定isOn状态,开关操作会同步更新isOn的值Toggle({ type: ToggleType.Switch, isOn: $$this.isOn }).selectedColor('#007DFF')    // 设置开关选中时的颜色(蓝色).switchPointColor('#FFFFFF') // 设置开关滑块的颜色(白色)// 再次调用toggleBuilder构建函数,显示当前状态文本(下方)this.toggleBuilder()// 创建复选框类型的Toggle组件// type: ToggleType.Checkbox 表示是复选框样式// 同样双向绑定isOn状态,与开关组件共享同一状态Toggle({ type: ToggleType.Checkbox, isOn: $$this.isOn }).selectedColor('#007DFF')    // 设置复选框选中时的颜色(蓝色).switchPointColor('#FFFFFF') // 设置复选框内部图标的颜色(白色)}.width('100%') // 设置Column宽度为100%父容器宽度.height('100%') // 设置Column高度为100%父容器高度.justifyContent(FlexAlign.Center) // 设置子组件在垂直方向居中对齐}
}

觉得有帮助,可以点赞或收藏

http://www.dtcms.com/a/465440.html

相关文章:

  • html css js网页制作成品——YSL口红红色 html+css (6 页)(老版)附源码
  • CSS中的选择器有哪些?相对定位和绝对定位是相对于谁的?
  • 发布企业信息的网站大连推广
  • 详解istio mtls双向身份认证
  • 国外创意网站公司如何进行网络推广
  • 软考中级习题与解答——第十五章_数据结构与算法应用(2)
  • 在JavaScript / HTML / Node.js中,post方式的Content-Type属性的text的三种编码
  • Linux gdb
  • 源码阅读 LeakCanary
  • Java 网络流式编程
  • java后端工程师进修ing(研一版‖day51)
  • JavaScript Promise 详解:从入门到精通
  • 中山建设银行招聘网站网站设计的评估
  • 深圳制作网站培训机构自己做的网站打开超慢
  • MySQL数据库优化实战提升查询性能的五大核心策略
  • libboost_system-mt-x64.so.1.76.0 和libboost_system-mt-d-x64.so.1.76.0 区别
  • 【11408学习记录】考研数学核心突破:线性代数特征值与特征向量详解+英语长难句精析
  • 深入剖析:基于epoll与主从Reactor模型的高性能服务器设计与实现
  • 非小细胞肺癌与肿瘤相关巨噬细胞:新的治疗策略
  • React Native:发现默认参数children【特殊的prop】
  • Flink进阶:从“会用”到“用明白”的踩坑与实战总结
  • 最专业的礼品网站实例网站优化费用怎么做会计分录
  • 苍穹外卖-工作台实现、Apache POI、导出Excel报表
  • 自定义类型:联合与枚举
  • Java9
  • 基于Spring Boot + Vue 3的乡村振兴综合服务平台
  • Java-145 深入浅出 MongoDB 基本操作详解:数据库查看、切换、创建集合与删除完整教程
  • disable-devtool 网络安全 禁止打开控制台
  • TCP协议的可靠性保障
  • ktv支付订房网站模板商业策划书范文6篇