调节系统字体大小后 HarmonyOS 鸿蒙Next 如何解决界面错乱问题

发布于 1周前 作者 itying888 最后一次编辑是 5天前 来自 鸿蒙OS

调节系统字体大小后 HarmonyOS 鸿蒙Next 如何解决界面错乱问题

【问题现象】

更改了系统字体后,应用内的字体变化,界面发生错乱。

【背景知识】

ArkUI为开发者提供种像素单位,框架采用vp为基准数据单位。API12release之前,应用默认会跟随系统字体变化而变化。

名称

描述

px

屏幕物理像素单位。

vp

屏幕密度相关像素,根据屏幕像素密度转换为屏幕物理像素,当数值不带单位时,默认单位vp。说明:vp与px的比例与屏幕像素密度有关。

fp

字体像素,与vp类似适用屏幕密度变化,随系统字体大小设置变化。

lpx

视窗逻辑像素单位,lpx单位为实际屏幕宽度与逻辑宽度(通过designWidth配置)的比值,designWidth默认值为720。当designWidth为720时,在实际宽度为1440物理像素的屏幕上,1lpx为2px大小。

开发者设置的字体大小,默认为vp,当在设置中修改文字大小时,对应的数值会发生变化,字体像素(font pixel) 大小默认情况下与 vp 相同,即默认情况下 1 fp = 1vp。如果用户在设置中选择了更大的字体,字体的实际显示大小就会在 vp 的基础上乘以用户设置的缩放系数,即 1 fp = 1 vp * 缩放系数。

【解决方案】

API12release之前,应用默认会跟随系统字体变化而变化。API12 release之后,应用默认不会跟随系统字体变化而变化。

(1)部分控件设置文字固定大小:使用px为单位即可。

(2)全局设置文字固定大小:

在开发视图的AppScop/resources/base/profile下面定义配置文件configuration.json,其中文件名"configuration"可自定义,需要和configuration标签指定的信息对应。配置文档查看。

代码示例如下:

app.json5文件:

{
  "app": {
    "configuration": "$profile:configuration"  
  }
}

configuration文件:

{
  "configuration": {
    "fontSizeScale": "followSystem",
    "fontSizeMaxScale": "3.2"
  }
}

修改后的效果如下:

【总结】

设置文字不跟随系统文字大小变化,核心在于单位,如果设置为像素长度就不会有变化,或者全局关闭字体大小跟随。

注意:如果是API12release,则应用默认不跟随系统字体大小变化,需要配置configuration配置项才能开启,开启这个的前提是进行适老化适配。

附:屏幕像素密度几个单位之间的转换指导

1 回复

作为IT专家,对于HarmonyOS鸿蒙Next在调节系统字体大小后出现界面错乱的问题,以下是一些专业的解决方案:

  1. 检查字体设置:首先,确认字体大小调整是否在合理范围内。部分界面可能不适配过大的字体,导致排版错乱。尝试将字体调整为标准或默认大小,看是否能解决问题。
  2. 调整屏幕分辨率:进入“设置”界面,选择“显示和亮度”,查看“屏幕分辨率”设置。确保屏幕分辨率没有设置得过低,因为低分辨率可能加剧界面显示问题。
  3. 应用内字体调整:如果HarmonyOS鸿蒙Next支持应用内字体大小设置,可以在应用设置中找到相关选项进行调整,以适应不同的字体需求。
  4. 重启设备:有时系统或软件问题可能导致界面错乱,重启设备可能有助于恢复正常显示。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部