如何:iPad上的自动旋转和仅在iPhone上的肖像?

时间:2011-08-14 01:23:38

标签: iphone ipad xcode3.2 autorotate universal

您好,我刚开始使用iPhone编程。我在Xcode 3.2中为iPad和iPhone创建了一个通用应用程序,并且evrerything工作正常。但现在我想在该应用程序中实现以下功能:

它应该支持iPad上的自动旋转,并且只能在iPhone上使用肖像。

我不知道该怎么做。

我有一个AppDelegate_iPad委托文件, 一个AppDelegate_iPhone委托文件, 和共享选项卡下的视图控制器,由这两个代表共享。

任何想法如何实现该功能。任何帮助将不胜感激。

由于 维克

2 个答案:

答案 0 :(得分:3)

在要实现此旋转行为的视图的视图控制器中,在shouldAutorotateToInterfaceOrientation内进行检查,如下所示:

- (BOOL)shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation) interfaceOrientation {     
    UIDevice* thisDevice = [UIDevice currentDevice];
    if (thisDevice.userInterfaceIdiom == UIUserInterfaceIdiomPad)
    {
        return true;
    }
    else
    {
        return interfaceOrientation == UIDeviceOrientationPortrait;
    }
}

答案 1 :(得分:0)

运行iOS 6+的应用程序也希望实现ViewController的:

- (NSInteger)supportedInterfaceOrientations

和/或AppDelegate:

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window

,例如,

- (NSInteger)supportedInterfaceOrientations
{
    if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) {
        return UIInterfaceOrientationMaskAll;
    }
    return UIInterfaceOrientationMaskPortrait;
}