0

在故事板中,我的UINavigationController没有导航栏,而且根视图控制器UIPageViewController有两个孩子:LoginVCChoosePlaceVCUIPageViewController中的奇怪约束行为

MainPageVC是UIPageViewController的一个简单的子类,我只是设置

[self setViewControllers:@[loginVC] direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:nil]; 

在登录视图控制器我设置约束到顶部的标志形象的标志0(距离屏幕的顶部0 )。但是,当我看到它第一次从状态栏的distance为20,只有当我去下一个VC在UIPageViewController(weakSelf是弱引用自定义UIPageViewController):

[weakSelf setViewControllers:@[choosePlaceVC] direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:^(BOOL finished) { 

     }]; 

,然后返回登录VC:

[weakSelf setViewControllers:@[loginVC] direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:^(BOOL finished) { 

     }]; 

徽标到状态栏的距离becomes 0。当我重复移动到下一个VC并返回时,距离保持= 0(这是正确的距离)

为什么第一次出现距离= 20?

回答

1

经过长期的调查后,我想通了:

在故事板中UIPageViewController的属性检查器在扩展边缘我在复选框在最热门酒吧和在底部的酒吧选中。

现在在固定的约束奇怪的行为(我注意到,在这种情况下,无论如何我有顶点的偏移量= 20像素,但始终是恒定的,但如果添加主视图的子视图与大小像主视图,如果我添加到这个子视图的所有元素,距离顶= 0像素)。