试图为iOS设备创建一个通用应用程序

时间:2011-08-03 13:07:29

标签: iphone ipad universal-binary

我准备好了我的iPhone应用程序,现在我要把它变成一个通用应用程序。

我这样做..

self.window = [[UIWindow alloc] init];
self.appFrame = [[UIScreen mainScreen] bounds];
self.window.frame = self.appFrame;
UINavigationController *aNav = [[UINavigationController alloc] initWithRootViewController:self.myViewController];
aNav.view.frame = self.appFrame; 
self.nav = aNav;
[self.window addSubview:nav.view];
[self.window makeKeyAndVisible];

我的项目中没有MainWindow.xib。我正在以编程方式创建它。

因此,如果我使用此代码将帧提供给窗口

self.appFrame = [[UIScreen mainScreen] bounds];
self.window.frame = self.appFrame;

然后iPad应该有(0,0,768,1024)而iPhone应该有(0,0,320,480)

但是,如果我在iPad模拟器上运行我的代码,self.appFrame需要(0,0,320,480)

你能解释一下我的问题吗?

如何在不使用MainWindow.xib ??

的情况下创建通用应用

1 个答案:

答案 0 :(得分:0)

在Xcode中打开目标的Build Settings标签,并将目标设备系列键设置为 iPhone / iPad 。然后您的应用程序将编译为本机iPad和iPhone应用程序,[[UIScreen mainScreen] bounds]应返回正确的结果。顺便说一下,你应该使用[[UIScreen mainScreen] applicationFrame]而不是窗框的边界!