前段时间来了一个新设计,将 App 的风格修改了一遍。在显示文字时,增加了行间距。原本以为只是展示和计算高度的时候添加上富文本的 lineSpace 属性即可,但是结果在显示一行中文的时候,却怎么也计算字体的时候多了一个行间距的高度,展示的 Label 也多了一个行间距的高度。经过查找资料,网上也有人遇到同样的坑。计算高度时,需要将判断一下是否中文与一行,如果是一行带中文并且有行间距,此时总体高度应该减去行间距。展示的 Label 如果用的是自适应高度,也应该做一下判断,一行中文带行间距时,不设置 Label 的 lineSpace 属性。如果你也遇到这样坑,可以通过本文章的 Demo 解决,并封装好一些方法,便于以后的使用。