我有一个UIScrollView
填充子视图,创建它并初始填充时,一切都很好。UIScrollView addSubview或更改框架后不需要的滚动
但是,当我添加一个位于可视屏幕部分之外的新子视图,或者当我调整也在可见屏幕部分之外的现有子视图时,会有一个随后的0.3s长滚动动画(我可以看到它发生在我的委托中),它似乎与新添加/调整大小的元素相匹配。
尝试:
- pagingEnabled总是NO。
- 在子视图操作期间将scrollEnabled设置为NO没有帮助。
- 做一个setContentOffset:animated:在子视图操作后没有阻止动画。
- 一个单一的巨人子视图与我所有的子视图都没有帮助。
我目前的解决方法是先设置为适合可见屏幕部分内,或做其他调整内上海华工作的框架,但感觉肮脏,而不会处理所有的情况......
有没有办法来防止这种自动滚动动画时,以编程方式操作子视图?
Xcode 4.3,iOS SDK for 5.1。
它的工作原理,谢谢!有趣的是,我看到那个页面,但是当我看到他们在谈论寻呼时停止了阅读,这在我的情况下不适用;应该继续阅读! :-P – squelart
在该方法中设置断点,我看到以下调用堆栈:(我的子视图操作方法) - > UIView addSubview -...-> UITextView didMoveToSuperview - > UITextView webViewDidChange: - > UITextView scrollRectToVisibleInContainingScrollView - > NoAutoScrollUIScrollView scrollRectToVisible :动画:。所以它看起来像UITextView强制滚动它的UIScrollView容器。上述技巧可能会停止工作一天,如果苹果改变了这种方式,但它现在应该做的... – squelart
@squelart说得好! –