1

我做了一个UITextView但有一些不需要的间距:

黑色边框

(我正在单独绘制白框)。我相当确定我得到了正确的坐标,因为如果我滚动它会在正确的位置被切断:

滚动显示边界

如何使文本进一步向左绘制,并使最顶部的位置更靠上?也就是说,我希望它看起来像这样:

期望的结果

我试过[[textView layer] setBorderWidth:0.0f]了,但无济于事——它已经没有边框了。如果我将边框宽度设置为 2 并设置为红色,这就是它的样子:

带层红色边框

我很好奇额外间距从何而来以及如何控制它。

4

2 回答 2

3

您是否尝试过使用 textContainerInset?

根据developer.apple.com 上的文档,“此属性为在文本视图中布局的文本提供文本边距。” 这是 iOS 7 中的新功能。

于 2013-10-17T03:18:53.270 回答
3

似乎以下方法可以解决问题:

UITextView *textView = ...;
[textView setContentInset:UIEdgeInsetsMake(-10, -8, 0, 0)];

结果正是我想要的。这并不太令人满意,因为它使用了幻数,所以如果有人有更好的答案,请随时发表评论或回答。

于 2013-10-17T16:58:21.433 回答