iOS 9将UITextView滚动到顶部

时间:2015-08-26 23:55:03

标签: ios objective-c uitextview

在iOS 7和/或8中,以编程方式将我的UITextView滚动到顶部按照viewDidLoad中的预期工作:

[self.someTextView scrollRangeToVisible:NSMakeRange(0, 0)];

现在它只是加载到我的其他框架。我的猜测是加载到我的contentOffset UIEdgeInsetsMake(0, 0, 65, 0)

如何使这项工作> = iOS9?

注意:我已尝试放入viewDidAppear但没有结果

编辑当我的UITextView文字大于其视图的高度时,会出现此问题。我使用UIEdgeInsets因为视图以模态方式呈现,并且比屏幕边界稍大。但是,在这种情况下,scrollRangeToVisible仍然适用于iOS 7/8但不适用于iOS9

2 个答案:

答案 0 :(得分:17)

尝试将代码放在viewDidLayoutSubviews

答案 1 :(得分:5)

我在iOS 9上遇到了同样的问题,这个解决方法修复了它:

boolean passwordCheckResult = passwordObject.checkPassword(oldPassword);
//above line stores whatever checkPassword returns, into passwordCheckResult

if(passwordCheckResult == true){
    //more code
}

意思是,只有在第一次布置子视图时才需要额外清除contentOffset。当用户旋转屏幕或在视图中做其他事情时,一直这样做会很痛苦。