我正在制作以下视图控制器(VC)结构.
[UINavigationViewController] – > [UIPageViewController] – > [UIViewControllers]
那么,这个VC应该支持纵向和横向.
我所遇到的一个问题是改变方向到任何一方.
你可以看到问题.
红色区域是UIPageViewController上子VC的背景颜色.
蓝色区域是UIPageViewController的背景颜色.
我猜孩子VC没有被UIPageViewController转发.我已经弄清楚了很久.我终于找到了一个解决方法,将以下重写函数添加到自定义UIPageViewController.
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation { [self setViewControllers:self.viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:NULL]; }
虽然完成轮换后会显示向下移动视图.这段代码粗略地解决了这个问题.
无论如何,我真的想知道任何好的和自然的解决方案.
UPDATE
我的应用程序在iOS6上运行良好.它可能是iOS7的bug?