HUAWEI Mate 70 Pro+ 这个机型 HarmonyOS鸿蒙Next想知道数值判断

HUAWEI Mate 70 Pro+ 这个机型 HarmonyOS鸿蒙Next想知道数值判断 【问题描述】:现在做屏幕适配的app,对于HUAWEI Mate 70 Pro+这个机型的宽高判断数值是多少

【问题现象】:问下这个数值有没有个固定标准?现在判断是400以下是直屏

图片

【版本信息】:不适用

【复现代码】: 图片

【尝试解决方案】: 图片


更多关于HUAWEI Mate 70 Pro+ 这个机型 HarmonyOS鸿蒙Next想知道数值判断的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

在HarmonyOS Next中,数值判断主要使用ArkTS语言。您可以使用标准的比较运算符(如 ==!=><>=<=)和逻辑运算符(如 &&||!)在条件语句(如 ifelse ifelse)中进行判断。例如:if (value > 10) { // 执行操作 }

更多关于HUAWEI Mate 70 Pro+ 这个机型 HarmonyOS鸿蒙Next想知道数值判断的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中进行屏幕适配,不应直接依赖具体机型的固定宽高数值进行判断,尤其是对于尚未发布的机型(如HUAWEI Mate 70 Pro+)。正确的做法是使用系统提供的响应式布局能力和通用断点。

根据您提供的代码截图,您正在使用 windowSizeClass 进行判断。这是推荐的方式。核心逻辑是:

  1. 使用标准断点,而非固定数值:HarmonyOS Next的设计系统定义了通用的窗口宽度断点(如compactmediumexpanded),用于区分不同的设备形态(如直屏手机、折叠屏展开态、平板)。您代码中的 windowSizeClass.widthSizeClass === WindowSizeClass.COMPACT 就是判断当前是否为紧凑型设备(通常指直屏手机竖屏状态),这比判断“宽度是否小于400vp”更标准、更未来兼容。

  2. 针对HUAWEI Mate 70 Pro+这类未发布机型:其物理分辨率或逻辑像素(vp)值可能尚未公开或后续会有调整。您的应用应基于 windowSizeClassmediaQuery 查询返回的类别来适配布局,而不是写死一个宽度值(如400)。系统会自动为不同屏幕尺寸的设备归类到对应的 WindowSizeClass 中。

  3. 具体建议:您当前的适配思路(使用windowSizeClass)是正确的。请继续使用这套机制。对于您关心的“直屏”判断,WindowSizeClass.COMPACT 通常就对应了直屏手机的竖屏状态。折叠屏设备在折叠状态下通常也会被识别为 COMPACT,展开后可能变为 MEDIUMEXPANDED

结论:无需,也不应该去查找或硬编码HUAWEI Mate 70 Pro+的具体宽高vp值。坚持使用您已采用的 windowSizeClass 响应式API,这是HarmonyOS Next屏幕适配的标准和推荐方案,能确保应用在不同现有及未来机型上的正确表现。

回到顶部