1

目前我有一个关于 iOS 5 上的 shouldAutorotateToInterfaceOrientation 的特殊问题。简单地说,我的整个项目应该只处理肖像,除了应该处理 UIInterfaceOrientationMaskAllButUpsideDown 的图像查看器。

基本上,我把这段代码放在我所有的 viewControllers 中:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation*)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

然后,我有一个名为 PageViewController 的 ViewController。那里有一个调用 UIImapgePicker 控制器的按钮。一旦图像被选中,我就会关闭 ViewController(imagePicker),所以我回到 PageViewController 并推动 ImageViewController。

这使 :

                3

PageViewController -> ImageViewController

   1 |   A  2
     V   |

谢谢你的帮助。

图像选择器控制器

4

1 回答 1

1

发现答案在其他地方。在我的 PageViewController 中,我使用的是UIPageViewController. 因此,当我拍照时,我会翻一页并使用setViewControllers:direction:animated:completion. 但是,我在调用之后立即展示了 ImageViewController,setViewControllers:direction:animated:completion而不是使用完成块。所以我只是将我presentViewController:animated:completion:的移动到完成块中,它工作得很好。

这里的例子:

[self.pageController setViewControllers:controllersArray direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:^(BOOL finished) {
   if (finished)
      [self presentViewController:imageController animated:NO completion:nil];
}

希望这对其他人有帮助。

于 2012-11-30T14:05:31.580 回答