UITextView如何禁用带有内容插入的水平滚动
Posted
技术标签:
【中文标题】UITextView如何禁用带有内容插入的水平滚动【英文标题】:UITextView how disable horizontal scrolling with content inset 【发布时间】:2013-01-23 17:42:51 【问题描述】:我以编程方式创建了 UITextview,我需要在文本中设置一些左边距。我这样做:
myTextView.contentInset = UIEdgeInsetsMake(0.0, 5.0, 0.0, 0.0);
这个工作,但现在我有水平滚动。
我尝试将contentSize
设置为小于我的文本视图框架(它等于 320 pt)。
这个
myTextView.contentSize = CGSizeMake(300.0, 39.0);
不要帮忙。
我需要为文本设置左边距并且只设置垂直滚动。
【问题讨论】:
【参考方案1】:使用 textContainerInset (ios 7.0+) 代替 contentInset
myTextView.textContainerInset = UIEdgeInsetsMake(0.0, 5.0, 0.0, 0.0);
【讨论】:
【参考方案2】:使用自定义插图,我发现对我来说最好的解决方案是将 UITextView 子类化,然后在 layoutSubviews 中调用以下代码。
-(void) layoutSubviews
// always keep content offset at x = 0
self.contentOffset = CGPointMake(0, self.contentOffset.y );
[super layoutSubviews];
希望这对某人有所帮助。我还将这个答案发布到https://***.com/a/24027310/2661613
【讨论】:
以上是关于UITextView如何禁用带有内容插入的水平滚动的主要内容,如果未能解决你的问题,请参考以下文章