HarmonyOS text 如何做到,一行显示的时候居中,超过一行的时候靠左显示?

如题:HarmonyOS text 如何做到,一行显示的时候居中,超过一行的时候靠左显示?

阅读 577
1 个回答

通过判断行数去设置不同的对其方式

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

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

场景一:超过特定行数(下方以3行为例),样式不同,比如加上展开、收缩。计算文本总高度 let textSize : SizeOptions = measure.measureTextSize({ textContent: this.content, fontSize: 24, constraintWidth: 300 }) 限定宽度和最大行数(3行),计算高度 let textSize2 : SizeOptions = measure.measureTextSize({ textContent: this.content, fontSize: 24, maxLines: 3, constraintWidth: 300 })若textSize.height \> textSize2.height,则表示实际高度超过3行,根据判断结果进行业务处理。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进