2011-08-03 31 views
0

我准备好了我的iPhone应用程序,现在我已经使其成为通用应用程序。试图为iOS设备创建通用应用程序

我这样做..

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通用的应用程序?

回答

0

打开Xcode中的目标的生成设置选项卡并设置目标器件系列关键iPhone/iPad的。然后,您的应用程序将编译为原生iPad和iPhone应用程序,并且[[UIScreen mainScreen] bounds]应返回正确的结果。顺便说一句,你应该使用[[UIScreen mainScreen] applicationFrame]而不是窗口框架的边界!

+0

实际上'applicationFrame'给出的高度为20像素..我想全屏尺寸,所以我选择了'边界'。 – Hisenberg

+0

反正我直接在设备上试过,它工作。 Thnks .. :) – Hisenberg

相关问题