Ios 使用scrollRangeToVisible()时,UITextView始终从开始滚动

Ios 使用scrollRangeToVisible()时,UITextView始终从开始滚动,ios,uiscrollview,uitextview,Ios,Uiscrollview,Uitextview,我正在调试一个记录我的操作的UITextView e、 g.如果我按下屏幕上的特殊按钮,此UITextView将显示我刚才按下的按钮。当我按下更多按钮时,它将记录更多的日志,因此我可以轻松滚动UITextView查看我过去的操作 因为UITextView本身不会随着文本的增加而滚动,所以我尝试让它在有内容登录时滚动到最后一行。 我尝试使用下面的scrollRangeToVisible()方法 history.scrollRangeToVisible(NSMakeRange(count(histo

我正在调试一个记录我的操作的
UITextView

e、 g.如果我按下屏幕上的特殊按钮,此
UITextView
将显示我刚才按下的按钮。当我按下更多按钮时,它将记录更多的日志,因此我可以轻松滚动
UITextView
查看我过去的操作

因为
UITextView
本身不会随着文本的增加而滚动,所以我尝试让它在有内容登录时滚动到最后一行。 我尝试使用下面的scrollRangeToVisible()方法

history.scrollRangeToVisible(NSMakeRange(count(history.text!) - 1, 1))
这里的历史记录是一个
UITextView
outlet

问题是,此方法始终使
UITextView
从开始滚动到指定的
NSRange
。更具体地说,它会将视图重置为文本的开头,然后向下滚动到
NSRange
所在的位置。我想让它直接向下滚动

有人能解决这个问题吗?非常感谢。

此链接()建议关闭滚动,进行更改,然后打开滚动

history.scrollEnabled = NO;
[history scrollRangeToVisible:NSMakeRange(history.text.length - 1,0)];
history.scrollEnabled = YES;
编辑

经讨论后使用以下方法解决:

history.layoutManager.allowsNonContiguousLayout = NO; 

看到这里:

我使用的是iOS 8.3,似乎这个解决方案不适合我。无论如何谢谢:)另一个选项是在添加新文本之前禁用滚动,然后在添加新文本之后启用滚动。也许文本的插入重置了与滚动相关的内容,导致它首先扭曲到顶部。请看,这是您上面提到的相同解决方案,似乎对我不起作用:(不一样。第一个是在滚动关闭时执行滚动请求。第二个是在滚动关闭时执行文本插入/追加。抱歉,我没有仔细阅读。第二个解决方案仍然禁用了我的UITextView(无法滚动)即使在scrollEnabled设置为true之后。这只是一个谜