如何从“空应用程序”模板制作通用应用程序?

时间:2012-02-14 15:25:23

标签: ios xcode4

我尝试重新编写一些旧版应用,并希望从头开始。

基本上我尝试从“空应用程序”模板开始,只留下AppDelegate.m / .h,我需要在iPad / iPhone之间进行自己的分离。

我知道如何在AppDelegate中执行此操作吗?

在较旧的Xcode版本中,该程序为iPad / iPhone创建了单独的代理。

1 个答案:

答案 0 :(得分:1)

当您必须以不同方式处理iPhona和iPad时,您可以使用以下内容查看您的身份:

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
    // Do things for iPad
} else {
    // Do things for iPhone
}

因此,您可以为iPad或iPhone使用不同的视图委托,或者如果它们的行为几乎完全相同,您可以使用相同的视图委托,并在必要时使用之前的测试。例如,您可以修改init方法以加载不同的Xib文件:

- (id)init
{
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
        self = [super initWithNibName:@"ViewController_iPad" bundle:nil];
    } else {
        self = [super initWithNibName:@"ViewController_iPhone" bundle:nil];
    }
    if (self) {
        // Custom initialization
    }
    return self;
}

您可以在shouldAutorotateToInterfaceOrientation等中执行类似操作。