我通过Interface Builder添加并定位了UIScrollView,作为导航控制器堆栈上视图控制器的一部分。当我将一个新的视图控制器推入堆栈,然后弹出新的视图控制器时,原始视图中的UIScrollView向上漂移了52个像素。
这只发生在设备上,而不是模拟器。
任何可能导致此问题的想法?我可以通过调用viewWillAppear / viewWillAppear中的重新定位来追溯修复它,但由于某些原因,即使这样也不起作用,所以我真的想解决根本原因。谢谢!
注意回复评论:我将导航栏隐藏在推送的视图控制器中,但不是原始视图控制器。另请注意,原始视图控制器上还有其他几个UIView元素,但它只是UIScrollView移出位置。
更新:没有隐藏推送视图控制器中的导航栏对UIScrollView问题没有影响 - 但感谢您的建议,评论者。
答案 0 :(得分:0)
修复:如果导航栏隐藏在视图控制器上,并且您不希望任何子视图(通过Interface Builder添加)以意外方式自动重新定位,请确保子视图上的struts已设置待修复。