text组件,设定宽度,文字铺满对应宽度,高分辨率机型加载文字压缩,联盟存在同样问题
1、加载demo
2、组件-->基础组件-->text组件
1、低配机型加载正常 2、高分辨率机型加载文字压缩

找了两台设备 ,其分辨率分别是 2340 * 1080和2560 * 1600, 分别对一下样式进行验证
<text style="width: 172px;">text-align:center</text>2340 * 1080
可以明显看到完整贴和边缘
抓取布局得到布局宽度是 248 pixel
172 * (1080 / 750) = 247.68 四舍五入为248

可以看到布局不下了,被换行了
抓取布局得到布局宽度是 367 pixel
172 * (1600 / 750) = 366.9 四舍五入为367
在 2560 * 1600 的设备上完整布局这行文本需要 175px;
在 2340 * 1080 的设备上完整布局这行文本需要 172px;
分析
textsize = 64.0
textsize = 43.0
实际上是不同设备下的生效的 textsize是不一样的,所以最终生成的布局宽度可能不是一个固定的宽度
快应用提供了 MediaQuery 能力,可以用来适配不同分辨率的设备
在这里就可以使用 mediaquery判断屏幕宽度的方式
使用前
<template>
<div>
<text>text-align:left</text>
</div>
</template>
<style>
.text-test {
width: 172px;
}</style>
效果

使用后
<template>
<div>
<text class="text-test">text-align:left</text>
</div>
</template>
<style>
@media (width > 1080) {
.text-test {
width: 175px;
}
}
.text-test {
width: 172px;
}
</style>
效果

首先找到不同分辨率的设备,使用 ide 的 inspact 功能获取到期望的宽度值
2560 \* 1600
需要的宽度是
175px;
2340 * 1080需要的是172px;
使用 mediaquery 对不同设备进行区分
这里判断一下设备宽度
@media (width > 1080) {
.text-test {
width: 175px;
}
}
原文链接: https://developer.huawei.com/consumer/cn/forum/topic/0204423007060260633?fid=18
原作者: Mayism
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69970551/viewspace-2770349/ ,如需转载,请注明出处,否则将追究法律责任。