当前位置:首页 » 程序代码 » 正文

媒体查询之系统深浅色的监控判断,arkts,鸿蒙

媒体查询之系统深浅色的监控判断,代码如下:

import { mediaquery } from '@kit.ArkUI'; //导入媒体查询模块

@Entry
@Component
struct Page8 {
  @State message: string = '';
  @State backColor: Color = Color.White
  //通过 matchMediasync 接口设置媒体查询条件 - wb98.com

  private listener0: mediaquery.MediaQueryListener =
    this.getUIContext().getMediaQuery().matchMediaSync('(dark-mode: true)')//true为深色,false为浅色

  aboutToAppear(): void {
    //所有监听绑定事件
    this.listener0.on('change', (result: mediaquery.MediaQueryResult) => {
      if (result.matches) {
        this.backColor = Color.Blue
        this.message = '深色模式'
      } else {
        this.backColor = Color.Yellow
        this.message = '浅色模式'
      }
    })
  }

  aboutToDisappear(): void {
    //解绑监听
    this.listener0.off('change')
  }

  build() {

    Column() {

      Text(this.message)
        .fontSize(50)
        .fontWeight(FontWeight.Medium)
    }
    .width('100%')
    .height('100%')
    .backgroundColor(this.backColor)

  }
}


打赏 支付宝打赏 微信打赏

来源:济亨网

本文链接:https://www.wb98.com/post/382.html

arkts  鸿蒙  
    << 上一篇 下一篇 >>

    湘公网安备 43011102000514号 - 湘ICP备08100508号