3.3、HarmonyOS Next 切换按钮(Toggle)

Toggle 组件提供状态按钮样式,勾选框样式及开关样式,一般用于两种状态之间的切换

创建切换按钮

创建不包含子组件的Toggle

ToggleTypeCheckbox

ts 复制代码
Row() {
	Toggle({ type: ToggleType.Checkbox, isOn: false })
    Toggle({ type: ToggleType.Checkbox, isOn: true })
}.margin({left: 15})

ToggleTypeSwitch

ts 复制代码
Row() {
   Toggle({ type: ToggleType.Switch, isOn: false })
   Toggle({ type: ToggleType.Switch, isOn: true })
 }.margin({left: 15})

创建包含子组件的Toggle

ts 复制代码
Row() {
   Toggle({ type: ToggleType.Button, isOn: false }) {
     Text('status button')
       .fontColor('#182431')
       .fontSize(12)
   }.width(100)
   Toggle({ type: ToggleType.Button, isOn: true }) {
     Text('status button')
       .fontColor('#182431')
       .fontSize(12)
   }.width(100)
 }.margin({left: 15})

自定义样式

  • 通过 selectedColor 属性设置 Toggle 打开选中后的背景颜色。
ts 复制代码
Toggle({ type: ToggleType.Button, isOn: true }) {
	Text('status button')
	    .fontColor('#182431')
	    .fontSize(12)
}.width(100).selectedColor(Color.Pink)

Toggle({ type: ToggleType.Checkbox, isOn: true })
  .selectedColor(Color.Pink)
  
Toggle({ type: ToggleType.Switch, isOn: true })
  .selectedColor(Color.Pink)
  • 通过 switchPointColor 属性设置 Switch 类型的圆形滑块颜色,仅对 typeToggleType.Switch 生效。

添加事件

除支持通用事件外,Toggle 通常用于选中和取消选中后触发某些操作,可以绑定 onChange 事件来响应操作后的自定义行为

ts 复制代码
Toggle({ type: ToggleType.Switch, isOn: false })
  .onChange((isOn: boolean) => {
      if(isOn) {
        // 需要执行的操作
      }
})

上一篇 3.2、单选框(Radio) 下一篇 3.4、进度条(Progress)

相关推荐
王码码20356 小时前
Flutter 三方库 sparky 的鸿蒙化适配指南 - 实现极简 2D 游戏引擎功能、支持高效精灵图渲染与跨端游戏逻辑
flutter·harmonyos·鸿蒙·openharmony
●VON11 小时前
Flutter组件通信详解:父子组件交互的最佳实践
javascript·flutter·华为·交互·harmonyos·von
国医中兴12 小时前
ClickHouse查询优化:从原理到实战
flutter·harmonyos·鸿蒙·openharmony
枫叶丹412 小时前
【HarmonyOS 6.0】OAID服务正式支持TV设备
开发语言·华为·harmonyos
前端不太难12 小时前
鸿蒙游戏上线全流程(开发 + 打包 + 发布)
游戏·状态模式·harmonyos
木斯佳13 小时前
HarmonyOS 6 SDK对接实战:从原生ASR到Copilot SDK(下)- Copilot SDK对接与重构(全网最新)
ai·重构·copilot·harmonyos
枫叶丹413 小时前
【HarmonyOS 6.0】应用预加载机制,让应用启动快人一步
开发语言·华为·harmonyos
国医中兴13 小时前
ClickHouse监控与运维策略:从告警到故障处理
flutter·harmonyos·鸿蒙·openharmony
_waylau13 小时前
鸿蒙架构师修炼之道-实践应用
华为·harmonyos·鸿蒙·鸿蒙系统
希望上岸的大菠萝13 小时前
HarmonyOS 6.0 V2 状态管理实战(上)- 基于「今天空白」当前实现拆解 @ObservedV2、@Trace、@ComponentV2
华为·harmonyos·鸿蒙