6

我以编程方式创建了 UITextview,我需要在文本中设置一些左边距。我这样做:

myTextView.contentInset = UIEdgeInsetsMake(0.0, 5.0, 0.0, 0.0);

这工作,但现在我有水平滚动。
我尝试设置contentSize小于我的文本视图框架(它等于 320 pt)。

myTextView.contentSize = CGSizeMake(300.0, 39.0);

不要帮忙。

我需要为文本设置左边距,并且只需要垂直滚动。

4

2 回答 2

13

代替 contentInset,使用 textContainerInset (iOS 7.0+)

myTextView.textContainerInset = UIEdgeInsetsMake(0.0, 5.0, 0.0, 0.0);
于 2015-02-02T13:18:10.947 回答
0

使用自定义插图,我发现对我来说最好的解决方案是将 UITextView 子类化,然后在 layoutSubviews 中调用以下代码。

-(void) layoutSubviews
{
    // always keep content offset at x = 0
    self.contentOffset = CGPointMake(0, self.contentOffset.y );
    [super layoutSubviews];
}

希望这可以帮助某人。我还将这个答案发布到https://stackoverflow.com/a/24027310/2661613

于 2014-06-04T01:05:48.680 回答