我在Interface Builder中有一个UIViewController,我在UIView中添加了一个UIScrollView.它的contentOffset属性等于0.0,但是当我将UIScrollView滚动到最底层并推送另一个视图时,contentOffset会发生变化.
NSLog给了我以下值:
//View just loaded 2013-09-09 16:19:27.455 my_app[24588:907] Scroll View content offset is 0.000000 //We came back from another view 2013-09-09 16:19:30.957 my_app[24588:907] Scroll View content offset is 108.000000
这种行为的原因是什么?我刚刚在IB中添加了一个UIScrollView,并且根本没有在代码中做任何事情.
scrollView的contentHeight大于self.view.height. scrollView的框架保持不变.
解决方法
请参阅
my answer到类似的问题.
您需要在viewWillAppear:和viewWillDisappear:中相应地设置scrollview的contentOffset.
另外,看到这个:
> This answer至问题UIScrollView’s origin changes after popping back to the UIViewController.
>这个相关的问题,UIScrollview Autolayout Issue.