积分431 / 贡献0

提问31答案被采纳5文章47

[经验分享] 应用开发如何获取设备DPI 原创

润开鸿_坚果 显示全部楼层 发表于 2024-5-24 12:56:50
应用开发如何获取设备DPI运行环境
Mate 60 Pro 润和DAYU200(RK3568)同样适用
OpenHarmony4.1Release

概述
屏幕属性提供管理显示设备的一些基础能力,包括获取默认显示设备的信息,获取所有显示设备的信息以及监听显示设备的插拔行为。早上有人在群里问,于是给回复一下,


import { BusinessError } from '@ohos.base';
import display from '@ohos.display';


@Entry
@Component
struct DisplayPage {
  @State message: string = '坚果派';

  build() {
    RelativeContainer() {
      Text(this.message)
        .id('HelloWorld')
        .fontSize(50)
        .fontWeight(FontWeight.Bold)
        .alignRules({
          center: { anchor: '__container__', align: VerticalAlign.Center },
          middle: { anchor: '__container__', align: HorizontalAlign.Center }
        })
        .onClick(() => {
          let displayClass: Array<display.Display> = [];
          display.getAllDisplays((err: BusinessError, data: Array<display.Display>) => {
            displayClass = data;
            const errCode: number = err.code;
            if (errCode) {
              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));
            this.message=JSON.stringify(data[0].densityDPI)
          });
        })
    }
    .height('100%')
    .width('100%')
  }
}
效果

参考

©著作权归作者所有,转载或内容合作请联系作者

您尚未登录,无法参与评论,登录后可以:
参与开源共建问题交流
认同或收藏高质量问答
获取积分成为开源共建先驱

Copyright   ©2023  OpenHarmony开发者论坛  京ICP备2020036654号-3 |技术支持 Discuz!

返回顶部