Iphone 自动旋转方法是否应正常工作。。?

Iphone 自动旋转方法是否应正常工作。。?,iphone,objective-c,ipad,Iphone,Objective C,Ipad,我在基于分割视图的ipad应用程序中使用了多个UIViewController。 还有一些web服务。对于某些特定的web服务(例如注销),我需要删除拆分 查看并插入新视图,即登录屏幕。但大多数情况下,登录视图的shouldAutoRotate方法不会被调用,从而导致无法旋转的哑应用程序。 这背后的原因可能是什么?我该怎么办?确保所有视图控制器都返回YESforshouldAutorotateToInterfaceOrientation:用于您的iPad版本--至少是当时可见的视图控制器 请参阅

我在基于分割视图的ipad应用程序中使用了多个UIViewController。 还有一些web服务。对于某些特定的web服务(例如注销),我需要删除拆分 查看并插入新视图,即登录屏幕。但大多数情况下,登录视图的shouldAutoRotate方法不会被调用,从而导致无法旋转的哑应用程序。
这背后的原因可能是什么?我该怎么办?

确保所有视图控制器都返回
YES
for
shouldAutorotateToInterfaceOrientation:
用于您的iPad版本--至少是当时可见的视图控制器


请参阅:

确保您没有从UIViewController中提取UIView,该UIView应自动旋转指针FaceOrientation:函数返回YES,然后使用addSubView将UIView添加到另一个UIView中。我以前遇到过它。

为了维护我的遗留代码,我添加了这个

- (BOOL)shouldAutorotate{
    UIDeviceOrientation orientation = [UIDevice currentDevice].orientation;
    if (orientation == UIDeviceOrientationUnknown) return YES;
    BOOL result = [self shouldAutorotateToInterfaceOrientation:orientation];
    return result;
}

然后原始代码返回有效的自动旋转信息。

好的,谢谢它帮助我,我会尝试的。实际上,在shouldAutorotateToInterfaceOrientation:方法中,我计算了ViewController的大小,但在中给出了错误的大小,即它提供了上一个方向的大小,而不是当前的大小。因此,我根据尺寸进行了一些手动调整。可能会影响吗?事实上,我通过下面的链接,我发现我在窗口中添加了2个视图是错误的。i、 e loginview和splitview。现在,我已经将loginview作为模态视图呈现,解决了我的问题。现在我的应用程序运行良好。萨克斯。