我有一个 UIScrollView 通过 Interface Builder 添加和定位,作为导航控制器堆栈上的视图控制器的一部分。当我将一个新的视图控制器推送到堆栈上,然后弹出该新的视图控制器时,原始视图中的 UIScrollView 已经向上漂移了 52 个像素。
这只发生在设备上,而不是模拟器上。
有什么想法可能导致这种情况吗?我可以通过调用 viewWillAppear/viewWillAppear 中的重新定位来追溯修复它,但由于某些原因,在极少数情况下,即使这不起作用,所以我真的很想解决根本原因。谢谢!
回应评论请注意:我将导航栏隐藏在推送的视图控制器中,而不是原始视图控制器中。另请注意,原始视图控制器上还有其他几个 UIView 元素,但只有 UIScrollView 移动了位置。
更新:不在推送视图控制器中隐藏导航栏对 UIScrollView 问题没有影响 - 但感谢评论者的建议。