无效:CATextLayer包裹

时间:2015-04-27 10:49:24

标签: ios calayer ios8.3 catextlayer

我有严重的问题。

我开发iOS应用程序。 我试图在iOS 8.3上使用这个应用程序,CATextLayer不像以前那样工作。

我认为“包裹”属性不起作用。 因为CATextLayer具有正确的高度和宽度。 但只是文字没有被包裹。

如果文字是多行,则只有行尾有此问题。

官方参考: https://developer.apple.com/documentation/quartzcore/catextlayer/1515302-wrapped

2 个答案:

答案 0 :(得分:0)

在计算文本层的高度时,请使用ceil(h + 1),其中hboundingRectWithSize方法返回的高度。基本上,boundingRectWithSize已损坏,返回的垂直空间不足。 CATextLayer然后决定,由于它不能放入最后一行,因此最好将字符串从右边缘发送出去……

此处给出了令人困惑的API描述:

https://developer.apple.com/documentation/foundation/nsstring/1524729-boundingrectwithsize?language=objc

答案 1 :(得分:0)

这是LabelKit项目,该项目在UILabel的基础上支持多行文本动画,保持布局约束内容的大小和动画效果远超过CATextLayer