【问题标题】:UITextView always appears scrolled to bottom of content?UITextView 总是出现滚动到内容的底部?
【发布时间】:2016-01-08 06:48:31
【问题描述】:

我正在使用带有自动布局的情节提要,场景包含 UITextView,其中包含一些文本,您可以在下图中看到:

但是每当我在运行应用程序时移动到这个场景时,它会像下面这样:


我已经对其进行了很多研究并尝试了以下代码,即使那样它对我也不起作用:

[self.scrollView setContentOffset:CGPointZero animated:NO];

任何帮助将不胜感激。

【问题讨论】:

标签: ios objective-c autolayout uitextview


【解决方案1】:

尝试以下,可能会有所帮助:

[yourTextView scrollRectToVisible:CGRectMake(0,0,1,1) animated:YES];

设置viewDidLayoutSubviews中的内容偏移量使其生效。

- (void)viewDidLayoutSubviews {
[yourTextView setContentOffset:CGPointZero animated:NO];
}

viewDidLoad

[yourTextView scrollRangeToVisible:NSMakeRange(0, 1)];

【讨论】:

  • 我不确定,但它可能与自动布局有关。
【解决方案2】:

斯威夫特 4

contentTextView.scrollRangeToVisible(NSRange(location: 0, length: 0))

【讨论】:

  • 如果你想避免你的 textview 向上滚动它的内容,最好使用 scrollRectToVisible 方法。 self.textView.scrollRectToVisible(CGRect.init(x: 0, y: 0, width: 1, height: 1), animated: false)
【解决方案3】:

以下是有效的方法:只需设置 UITextView 的 text 属性,然后使用位置:0、长度:0 的 NSRange 调用 scrollRangeToVisible。我的文本视图不可编辑,我测试了可选择和不可选择(两种设置都不会影响结果)。

代码:

[textview scrollRectToVisible:NSRange(0, 0) animated:YES];

【讨论】:

    猜你喜欢
    • 2013-05-17
    • 2011-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-09
    • 2020-02-19
    • 1970-01-01
    相关资源
    最近更新 更多