视图不旋转

时间:2012-03-21 11:01:22

标签: iphone objective-c xcode uiviewcontroller

我正在制作基于导航的应用程序,除了支持所有方向的ZoomPictureViewController(放大,缩小图像)之外,我只需要纵向方向。

我正在提交ZoomPictureViewController并在YE

中返回shouldAutorotateToInterfaceOrientation: S.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return YES;
}

但我没有轮换。我知道 shouldAutorotateToInterfaceOrientation willRotateToInterfaceOrientation RotateToInterfaceOrientation 只能在当前/可见时调用查看控制器,但在我的情况下不会发生这种情况。我通过设置断点和NSLog来检查它。

1 个答案:

答案 0 :(得分:1)

您使用的是任何类型的导航控制器还是标签视图控制器?我注意到旋转一个不是第一个或唯一视图的UIView作为主窗口的直接子项时会出现问题。

因此,如果你的UIView是导航控制器或标签视图控制器的一部分,你还需要覆盖导航控制器或标签视图控制器上的shouldAutoRotateToInterfaceOrientation

此外,我在Apple文档中有一个重要的问题,可以解释您遇到的问题。

  

标签栏控制器支持纵向   默认情况下方向,不要   旋转到横向   除非所有的根视图   控制器支持这样的   取向。当设备方向   更改发生,标签栏控制器   查询其视图控制器数组。   如果其中任何一个不支持   方向,标签栏   控制器不会改变它   取向。