HarmonyOS NEXT应用元服务开发控件状态变化场景 - HarmonyOS技术社区 - 电子技术论坛 - 广受欢迎的专业电子论坛
分享 收藏 返回

[文章]

HarmonyOS NEXT应用元服务开发控件状态变化场景

例如下图,播放暂停按钮对应着两种状态,在状态切换时需要实时变化对应的标注信息。

import prompt from '@system.prompt'

const RESOURCE_STR_PLAY = $r('app.media.play')
const RESOURCE_STR_PAUSE = $r('app.media.pause')

@Component
export struct Rule_2_1_12 {
title: string = 'Rule 2.1.12'
@State isPlaying: boolean = true

play() {
// play audio file
}

pause() {
// pause playing of audio file
}

build() {
NavDestination() {
Column() {
Flex({
direction: FlexDirection.Column,
alignItems: ItemAlign.Center,
justifyContent: FlexAlign.Center,
}) {
Row() {

Image(this.isPlaying ? RESOURCE_STR_PAUSE : RESOURCE_STR_PLAY)
          .width(50)
          .height(50)
          .onClick(() => {
            prompt.showToast({
              message :this.isPlaying ? "Play" : "Pause"
            })
            this.isPlaying = !this.isPlaying
            if (this.isPlaying) {
              this.play()
            } else {
              this.pause()
            }
          })
          .accessibilityText(this.isPlaying ? 'Pause' : 'Play') // 设置可访问性框架的注释信息
      }
    }
    .width('100%')
    .height('100%')
    .backgroundColor(Color.White)
  }
}.title(this.title)

本文主要引用官方文档材料基API 12

更多回帖

×
发帖