在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
答案 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。当用户旋转屏幕或在视图中做其他事情时,一直这样做会很痛苦。