【发布时间】:2015-04-30 20:42:26
【问题描述】:
我有一个UIPageViewController(父母)管理多个UIViewControllers(孩子)。子 VC 只有 1 个 UIImageView,具有以下约束:0 px 左右,0 px 顶部布局指南,20px 到 底部布局指南
当我在Forward 方向更改页面时,它的行为正确。当我在Backward 方向更改页面时,说UIImageView 在过渡动画期间似乎覆盖了整个空间(类似于没有约束时的样子),并且当过渡完成时,它会更正它的位置.
长话短说,当向后翻页时,图像在动画过程中显得更大,然后它会变为正确的大小。为什么会这样?
PS:我创建了一个样板“基于页面的应用程序”,但它没有发生
编辑: 我的故事板嵌套了几个 VC,如下所示:TabBarController -> UINavigationController -> UIPageViewController。 pageVC托管的VC是在代码中动态添加的。
我已经尝试将 UIImageView 约束设置为父母,我注意到两件事:
- 图像的顶部被导航栏隐藏。
- 问题依然存在
有什么想法吗?
编辑:2
我的NavigationController 托管了一个 推送 UIPageViewController 的 VC(也许这不是它应该做的?),所以我并没有真正通过代码“添加” UIPageViewController。我通过代码添加它的孩子。这是一个SS
此外,孩子只是一个 UIViewController 和 UIImageView 和 0 约束到容器视图(不是布局指南),所以它覆盖了整个空间。
【问题讨论】:
-
不要使用顶部/底部布局指南。改为使用相对于超级视图的约束。
-
你可以在这里找到答案:) stackoverflow.com/a/29589531/2477632
-
问题仍然存在:(也许我做错了什么?请阅读我的编辑
-
您能否添加用于添加 pageViewController 的代码,以及您的 UIImageView 的约束?谢谢