uni-app Android11的nvue页面字体概率性会变小

uni-app Android11的nvue页面字体概率性会变小

开发环境 版本号 项目创建方式
Mac 12.0.1 HBuilderX
产品分类:uniapp/App

PC开发环境操作系统:Mac

HBuilderX类型:正式

HBuilderX版本号:3.2.12

手机系统:Android

手机系统版本号:Android 11

手机厂商:OPPO

手机机型:reno2

页面类型:nvue

vue版本:vue2

打包方式:离线

项目创建方式:HBuilderX

示例代码:
font-size: 17rpx;
操作步骤:
所有的nvue页面,字体使用 rpx ,Android11的系统
预期结果:
正常显示
实际结果:
字体概率性变小
bug描述:
之前3.2.9的时候提过一次类似的问题(https://ask.dcloud.net.cn/question/132200),被确认了bug并在3.2.12(部分)解决了,目前在Android11的设备还是会有30%概率性出现

更多关于uni-app Android11的nvue页面字体概率性会变小的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

请升级至HBuilderX 3.2.15版本试下

更多关于uni-app Android11的nvue页面字体概率性会变小的实战教程也可以访问 https://www.itying.com/category-93-b0.html


刚试了,还是不行

3.2.16也试了,还是一样

这是一个已知的Android 11系统兼容性问题,涉及nvue页面中rpx单位的字体渲染。

问题根源: 在Android 11系统上,系统WebView的字体缩放机制与uni-app的nvue渲染引擎存在兼容性冲突。当系统字体大小设置发生变化或应用从后台恢复时,系统可能会错误地干预nvue页面的字体渲染,导致使用rpx单位的字体概率性变小。

解决方案:

  1. 临时规避方案(推荐): 将nvue页面中的字体单位从rpx改为px。例如:

    font-size: 17px;
    

    这样可以绕过系统对rpx单位的缩放干预,确保字体大小稳定。

  2. 检查系统字体设置: 确保测试设备的系统显示设置中,"字体大小"和"显示大小"设置为默认标准值。非标准设置会加剧此问题的出现概率。

  3. 升级HBuilderX: 虽然3.2.12版本已部分修复,但建议升级到最新稳定版(当前为3.6+),后续版本对此类兼容性问题有持续优化。

  4. 监听应用状态: 在应用从后台返回前台时,强制重置页面样式(需配合Vue的$nextTick):

    onShow() {
      this.$nextTick(() => {
        // 触发样式重新计算
      })
    }
回到顶部