好吧,我的UITextView
出了点问题。这是问题所在:
我向UITextView
中添加了一些文本。然后,用户双击以选择某些内容。然后,我更改了UITextView
中的文本(编程方式同上),UITextView
滚动到页面底部有光标的位置。
然而,这并不是用户点击的地方。无论用户在哪里单击,它都会滚动到UITextView
的底部。
所以我的问题是:如何在每次更改文本时强制UITextView
滚动到顶部?我试过contentOffset
和scrollRangeToVisible
。两者都不起作用。
如有任何建议,我们将不胜感激。
发布于 2010-04-01 11:02:02
UITextView*note;
[note setContentOffset:CGPointZero animated:YES];
这对我来说就够了。
Swift版本(在Xcode9.3上使用iOS 11的Swift 4.1 ):
note.setContentOffset(.zero, animated: true)
发布于 2015-03-02 09:19:59
如果有人在iOS 8中遇到这个问题,我发现只需设置UITextView's
text属性,然后使用带有location:0
的length:0
的NSRange
调用scrollRangeToVisible
就可以了。我的文本视图是不可编辑的,并且我测试了可选择和不可选择(这两个设置都不会影响结果)。下面是一个Swift的例子:
myTextView.text = "Text that is long enough to scroll"
myTextView.scrollRangeToVisible(NSRange(location:0, length:0))
发布于 2015-07-24 05:13:07
这是我的解决方案。
override func viewDidLoad() {
textView.scrollEnabled = false
textView.text = "your text"
}
override func viewDidAppear(animated: Bool) {
textView.scrollEnabled = true
}
https://stackoverflow.com/questions/1234242
复制相似问题