UITextView textContainerInset不尊重底部插入值

tar*_*mes 14 uitextview ios7 textkit

我有一个显示NSAttributedString的UIView.它设置为调整大小以适应其内容.

我想在文本和视图之间创建一些填充,但它不是很有效.如果我这样做......

view.textContainerInset = UIEdgeInsetsMake(0, 15, 0, 15);
Run Code Online (Sandbox Code Playgroud)

...然后左边和右边填充,顶部和底部没有空间.这是对的.然后我添加一个顶部插图:

view.textContainerInset = UIEdgeInsetsMake(15, 15, 0, 15);
Run Code Online (Sandbox Code Playgroud)

现在顶部有15个点填充,但突然底部也有一点填充(大约10点).

如果我然后添加15点底部填充,底部变得太大,并且间距不是一直相同.相反,我必须捏造它:

view.textContainerInset = UIEdgeInsetsMake(15, 15, 5, 15);
Run Code Online (Sandbox Code Playgroud)

这是iOS 7的错误还是我误解了什么?我不喜欢在不了解正在发生的事情的情况下捏造最低价值.

hyp*_*asm 4

我不确定是什么原因造成的,但我遇到了同样的问题,似乎是苹果方面的一个错误。我正在iOS7.1上测试。

在我的特定情况下,我尝试在顶部和底部添加一些插图,例如。

view.textContainerInset=UIEdgeInsetsMake(100, 0, 100, 0);
Run Code Online (Sandbox Code Playgroud)

正如最初的问题所述,底部插入的 100 似乎被忽略了。我偶然发现我可以这样做:

view.textContainerInset=UIEdgeInsetsMake(100, 1, 100, 0);
Run Code Online (Sandbox Code Playgroud)

这给了我预期的底部插图。我可以接受左侧的(所谓的)1 点插入,所以我将使用它作为一种解决方法,它应该(理论上)在当前版本的 iOS 下工作,并且一旦修复了错误就不会完全破坏。我当然也会提交错误报告。