码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 鸿蒙开发接口UI界面:【@ohos.mediaquery (媒体查询)】


     媒体查询

    说明:  从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。  : gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。

    导入模块

    import mediaquery from '@ohos.mediaquery'

    权限

    无

    mediaquery.matchMediaSync

    matchMediaSync(condition: string): MediaQueryListener

    设置媒体查询的查询条件,并返回对应的监听句柄。

    系统能力:  SystemCapability.ArkUI.ArkUI.Full

    参数:

    参数名类型必填说明
    conditionstring是媒体事件的匹配条件,具体可参考[媒体查询语法规则]。

    返回值:

    类型说明
    MediaQueryListener媒体事件监听句柄,用于注册和去注册监听回调。

    示例:

    let listener = mediaquery.matchMediaSync('(orientation: landscape)'); //监听横屏事件

    MediaQueryListener

    媒体查询的句柄,并包含了申请句柄时的首次查询结果。

    系统能力:  SystemCapability.ArkUI.ArkUI.Full

    属性

    名称参数类型可读可写说明
    matchesboolean是否是否符合匹配条件。
    mediastring是否媒体事件的匹配条件。

    on

    on(type: 'change', callback: Callback): void

    通过句柄向对应的查询条件注册回调,当媒体属性发生变更时会触发该回调。

    系统能力:  SystemCapability.ArkUI.ArkUI.Full

    参数:

    参数名类型必填说明
    typestring是必须填写字符串'change'。
    callbackCallback是向媒体查询注册的回调

    off

    off(type: 'change', callback?: Callback): void

    通过句柄向对应的查询条件去注册回调,当媒体属性发生变更时不在触发指定的回调。

    系统能力:  SystemCapability.ArkUI.ArkUI.Full

    参数:

    参数名类型必填说明
    typeboolean是必须填写字符串'change'。
    callbackCallback否需要去注册的回调,如果参数缺省则去注册该句柄下所有的回调。

    示例:

    1. import mediaquery from '@ohos.mediaquery'
    2. let listener = mediaquery.matchMediaSync('(orientation: landscape)'); //监听横屏事件
    3. function onPortrait(mediaQueryResult) {
    4. if (mediaQueryResult.matches) {
    5. // do something here
    6. } else {
    7. // do something here
    8. }
    9. }
    10. listener.on('change', onPortrait) // 注册回调
    11. listener.off('change', onPortrait) // 去注册回调

    MediaQueryResult

    属性

    名称参数类型可读可写说明
    matchesboolean是否是否符合匹配条件。
    mediastring是否媒体事件的匹配条件。HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿

    搜狗高速浏览器截图20240326151450.png

    示例

    1. import mediaquery from '@ohos.mediaquery'
    2. let portraitFunc = null
    3. @Entry
    4. @Component
    5. struct MediaQueryExample {
    6. @State color: string = '#DB7093'
    7. @State text: string = 'Portrait'
    8. listener = mediaquery.matchMediaSync('(orientation: landscape)')
    9. onPortrait(mediaQueryResult) {
    10. if (mediaQueryResult.matches) {
    11. this.color = '#FFD700'
    12. this.text = 'Landscape'
    13. } else {
    14. this.color = '#DB7093'
    15. this.text = 'Portrait'
    16. }
    17. }
    18. aboutToAppear() {
    19. portraitFunc = this.onPortrait.bind(this) //bind current js instance
    20. this.listener.on('change', portraitFunc)
    21. }
    22. build() {
    23. Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
    24. Text(this.text).fontSize(24).fontColor(this.color)
    25. }
    26. .width('100%').height('100%')
    27. }
    28. }

    鸿蒙Next核心技术分享

    1、鸿蒙基础知识←《鸿蒙NEXT星河版开发学习文档》

    2、鸿蒙ArkUI←《鸿蒙NEXT星河版开发学习文档》

    3、鸿蒙进阶技术←《鸿蒙NEXT星河版开发学习文档》

     4、鸿蒙就业高级技能←《鸿蒙NEXT星河版开发学习文档》 

     5、鸿蒙多媒体技术←《鸿蒙NEXT星河版开发学习文档》 

    6、鸿蒙南向驱动开发←《鸿蒙NEXT星河版开发学习文档》  

    7、鸿蒙南向内核设备开发←《鸿蒙NEXT星河版开发学习文档》  

     8、鸿蒙系统裁剪与移植←《鸿蒙NEXT星河版开发学习文档》  

  • 相关阅读:
    CCF编程能力等级认证GESP—C++3级—样题1
    从0开始学习pyspark--pyspark的数据分析方式[第2节]
    PostgreSQL查询表操作
    post和get
    【滤波跟踪】不变扩展卡尔曼滤波器对装有惯性导航系统和全球定位系统IMU+GPS进行滤波跟踪【含Matlab源码 2232期】
    AGI 远不止 ChatGPT!一文入门 AGI 通识及应用开发
    C Primer Plus(6) 中文版 第2章 C语言概述 2.7 调试程序
    【andriod】 设备APP连接云端平台的各种细节部署和操作
    【无标题】
    SQLite Autoincrement特性
  • 原文地址:https://blog.csdn.net/2301_76813281/article/details/139248333
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号