HarmonyOS Text获取展示的行数

有个需求是,Text只有一行的时候,文本居中展示,超过一行时,左对齐显示,请问怎么获取Text显示的行数?最好有个行数变化的监听。

HarmonyOS
2025-01-09 16:14:09
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

@ohos.measure可以返回多行文字的宽高,没有返回行数,但可以根据业务场景来计算。

API文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-measure-V5

//场景一:超过特定行数(下方以3行为例),样式不同,比如加上展开、收缩。 计算文本总高度
let textSize : SizeOptions = measure.measureTextSize({ textContent: this.message, fontSize: 24, constraintWidth: 300 });
//限定宽度和最大行数(3行),计算高度
let textSize2 : SizeOptions = measure.measureTextSize({ textContent: this.message, fontSize: 24, maxLines: 3, constraintWidth: 300 });
//若textSize.height > textSize2.height,则表示实际高度超过3行,根据判断结果进行业务处理。
分享
微博
QQ
微信
回复
2025-01-09 17:57:51
相关问题
HarmonyOS Text获取文本显示行数
824浏览 • 1回复 待解决
HarmonyOS Text组件获取当前显示行数
312浏览 • 1回复 待解决
HarmonyOS Text获取行数据宽度
260浏览 • 1回复 待解决
HarmonyOS Text组件如何计算文本行数
346浏览 • 1回复 待解决
Text怎么解析展示带html标签文本?
2497浏览 • 1回复 待解决
HarmonyOS 获取text高度
356浏览 • 1回复 待解决
Text多行展示时,如何设置行间距?
579浏览 • 1回复 待解决
获取文本Text组件宽度
844浏览 • 1回复 待解决
HarmonyOS 如何限制Flex行数
348浏览 • 1回复 待解决