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

鸿蒙开发接口图形图像:【@ohos.display (屏幕属性)】

屏幕属性

屏幕属性提供管理显示设备的一些基础能力,包括获取默认显示设备的信息,获取所有显示设备的信息以及监听显示设备的插拔行为。

说明:
开发前请熟悉鸿蒙开发指导文档: gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。
本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import display from '@ohos.display';

DisplayState

用于表示显示设备的状态。

系统能力:  SystemCapability.WindowManager.WindowManager.Core

名称默认值说明
STATE_UNKNOWN0表示显示设备状态未知。
STATE_OFF1表示显示设备状态为关闭。
STATE_ON2表示显示设备状态为开启。
STATE_DOZE3表示显示设备为低电耗模式。
STATE_DOZE_SUSPEND4表示显示设备为睡眠模式,CPU为挂起状态。
STATE_VR5表示显示设备为VR模式。
STATE_ON_SUSPEND6表示显示设备为开启状态,CPU为挂起状态。

Display

描述display对象的属性。

系统能力:  SystemCapability.WindowManager.WindowManager.Core

名称参数类型可读可写说明
idnumber显示设备的id号。
namestring显示设备的名称。
aliveboolean显示设备是否启用。
state[DisplayState]显示设备的状态。
refreshRatenumber显示设备的刷新率。
rotationnumber显示设备的屏幕旋转角度。
widthnumber显示设备的宽度,单位为像素。
heightnumber显示设备的高度,单位为像素。
densityDPInumber显示设备的屏幕密度,单位为DPI。
densityPixelsnumber显示设备的屏幕密度,单位为像素。
scaledDensitynumber显示设备的显示字体的缩放因子。
xDPInumberx方向中每英寸屏幕的确切物理像素值。
yDPInumbery方向中每英寸屏幕的确切物理像素值。

display.getDefaultDisplay

getDefaultDisplay(callback: AsyncCallback<Display>): void

获取当前默认的display对象。

系统能力:  SystemCapability.WindowManager.WindowManager.Core

参数:

参数名类型必填说明
callbackAsyncCallback<[Display]>回调函数。返回当前默认的display对象。

示例:

var displayClass = null;
display.getDefaultDisplay((err, data) => {if (err.code) {console.error('Failed to obtain the default display object. Code:  ' + JSON.stringify(err));return;}console.info('Succeeded in obtaining the default display object. Data:' + JSON.stringify(data));displayClass = data;
});

display.getDefaultDisplay

getDefaultDisplay(): Promise<Display>

获取当前默认的display对象。

系统能力:  SystemCapability.WindowManager.WindowManager.Core

返回值:

类型说明
Promise<[Display]>Promise对象。返回当前默认的display对象。

示例:

let promise = display.getDefaultDisplay();
promise.then(() => {console.log('getDefaultDisplay success');
}).catch((err) => {console.log('getDefaultDisplay fail: ' + JSON.stringify(err));
});

display.getAllDisplay

getAllDisplay(callback: AsyncCallback<Array<Display>>): void

获取当前所有的display对象。

系统能力:  SystemCapability.WindowManager.WindowManager.Core

参数:

参数名类型必填说明
callbackAsyncCallback<Array<[Display]>>回调函数。返回当前所有的display对象。

示例:

display.getAllDisplay((err, data) => {if (err.code) {console.error('Failed to obtain all the display objects. Code: ' + JSON.stringify(err));return;}console.info('Succeeded in obtaining all the display objects. Data: ' + JSON.stringify(data))
});

display.getAllDisplay

getAllDisplay(): Promise<Array<Display>>

获取当前所有的display对象。

系统能力:  SystemCapability.WindowManager.WindowManager.Core

返回值:

类型说明
Promise<Array<[Display]>>Promise对象。返回当前所有的display对象。

示例:

let promise = display.getAllDisplay();
promise.then(() => {console.log('getAllDisplay success');
}).catch((err) => {console.log('getAllDisplay fail: ' + JSON.stringify(err));
});

display.on('add'|'remove'|'change')

on(type: 'add'|'remove'|'change', callback: Callback<number>): void

开启监听。

系统能力:  SystemCapability.WindowManager.WindowManager.Core

参数:

参数名类型必填说明
typestring设置监听类型。 - type为"add",表示监听增加显示设备。 - type为"remove",表示监听移除显示设备。 - type为"change",表示监听改变显示设备。
callbackCallback<number>回调函数。返回监听到的显示设备的id。

示例:

var callback = (data) => {console.info('Listening enabled. Data: ' + JSON.stringify(data))
}
display.on("add", callback);

display.off('add'|'remove'|'change')

off(type: 'add'|'remove'|'change', callback?: Callback<number>): void

关闭监听。

系统能力:  SystemCapability.WindowManager.WindowManager.Core

参数:

参数名类型必填说明
typestring设置监听类型。 - type为"add",表示监听增加显示设备。 - type为"remove",表示监听移除显示设备。 - type为"change",表示监听改变显示设备。
callbackCallback<number>回调函数。返回监听到的显示设备的id。HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿

新文档.png


示例:

display.off("remove");

2024年,已有许多程序员把未来投向了鸿蒙开发,想必也在网上寻找过【鸿蒙学习资料】,然而搜索到的资料都是七零八碎比较杂乱,对于新入门的人来说增加了时间成本;为了避免大家在学习过程中浪费过多时间。对此录制了一套鸿蒙基础进阶视频(HarmonyOS NEXT开发入门&实战教学视频(200集+)发放给大家。↓↓↓点击即可

《鸿蒙 (HarmonyOS NEXT)开发入门&实战教学视频》

鸿蒙ArkTS语言》

鸿蒙ArkUI声明式》

《鸿蒙开发环境搭建》

另外还根据鸿蒙官方发布的文档结合华为内部人员分享,经过反复修改整理得出的一整套鸿蒙(HarmonyOS NEXT)学习手册(共计2000页+)想要鸿蒙进阶文档的开发者有福了!

内容包含了:(ArkTS、ArkUI、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、鸿蒙南向开发、鸿蒙项目实战)等技术知识点。帮助大家在学习鸿蒙路上少走弯路!点击即可↓↓↓

《鸿蒙 (HarmonyOS NEXT)开发基础与实战手册》

相关文章:

  • Qt子线程更新UI的一种新玩法
  • 【Numpy】深入解析numpy中的ravel方法
  • Flink Task 性能指标
  • 【运筹学】前言:基础知识
  • 【MATLAB】数字滤波器的设计
  • 详解Java ThreadLocal
  • vi和vim有什么不同?
  • android-mvp模式
  • GPT-4 与 GPT-4 Turbo有什么区别?
  • 记一次重定向问题(浏览器安全)解决
  • Java基础——Optional
  • Vue框架-路由
  • vuejs路由和组件系统
  • 算法-可完成的最大任务数
  • Linux防火墙(以iptables为例)
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 【跃迁之路】【477天】刻意练习系列236(2018.05.28)
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • k个最大的数及变种小结
  • Less 日常用法
  • MySQL QA
  • nodejs:开发并发布一个nodejs包
  • node和express搭建代理服务器(源码)
  • passportjs 源码分析
  • python学习笔记-类对象的信息
  • React Transition Group -- Transition 组件
  • V4L2视频输入框架概述
  • webpack项目中使用grunt监听文件变动自动打包编译
  • 给新手的新浪微博 SDK 集成教程【一】
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 解决iview多表头动态更改列元素发生的错误
  • 前端工程化(Gulp、Webpack)-webpack
  • 前端面试题总结
  • 手机端车牌号码键盘的vue组件
  • 系统认识JavaScript正则表达式
  • hi-nginx-1.3.4编译安装
  • 如何用纯 CSS 创作一个货车 loader
  • ​Java基础复习笔记 第16章:网络编程
  • #define,static,const,三种常量的区别
  • #pragma预处理命令
  • (2022 CVPR) Unbiased Teacher v2
  • (2024,RWKV-5/6,RNN,矩阵值注意力状态,数据依赖线性插值,LoRA,多语言分词器)Eagle 和 Finch
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (Python第六天)文件处理
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)springboot助农电商系统 毕业设计 081919
  • (附源码)小程序 交通违法举报系统 毕业设计 242045
  • (个人笔记质量不佳)SQL 左连接、右连接、内连接的区别
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (七)Activiti-modeler中文支持
  • (七)glDrawArry绘制