2013-05-08 58 views
0

我正在开发一个应用程序,将工作在iphone 4s和iphone 5,这里的主要主题是为iPhone 4s和iPhone 5设计屏幕,在我previos应用程序我已经使用iOSDeviceScreenSize.height使用-(void)initializeStoryBoardBasedOnScreenSize设备的两个不同的故事板。但在我的新应用程序中,我希望通过不使用故事板的xib来实现,所以我想要解决方案如何开发一个兼容所有设备屏幕的应用程序,请花费宝贵的时间来更新我的知识,非常感谢你提前..加载两个不同的屏幕iphone 4s和iphone 5

回答

0

你被很多方式做

1)使用自动布局兼容的iPhone 4S和iPhone 5的

http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2

2)获取屏幕尺寸和根据设备的setFrame

#define IS_HEIGHT_GTE_568 [[UIScreen mainScreen ] bounds].size.height >= 568.0f 

if(IS_HEIGHT_GTE_568) 
{ 
// code for iPhone 5 
}else 
{ 
// code for iPhone 4s 
} 

3)获取屏幕尺寸,并根据设备

#define IS_HEIGHT_GTE_568 [[UIScreen mainScreen ] bounds].size.height >= 568.0f 

if(IS_HEIGHT_GTE_568) 
{ // Nib for iPhone5 

}else 
{ 
// Nib for iPhone 4s 
} 
+0

您好,谢谢您的回答,我需要在哪里编写这段代码?我每次需要编写这段代码的时候,我会采取什么行动来获得另一个屏幕?我希望您能理解我的问题吗? – SadikHasan 2013-05-08 09:28:55

+0

#define IS_HEIGHT_GTE_568 [[UIScreen mainScreen] bounds] .size.height> = 568.0f将这段代码放在你的.Pch文件中,当你需要的时候检查一下你的条件是:设备是iPhone 4还是iPhone 5 – 2013-05-08 09:32:10

+0

,如果你加载用于iPhone4和iPhone 5的不同xib然后usehomePageVC = [[HomePageViewController alloc] initWithNibName:IS_HEIGHT_GTE_568? @“HomePageViewController_iPhon5”:@“HomePageViewController_iPhone4”捆绑包:[NSBundle mainBundle]]; – 2013-05-08 09:36:13

0

附加到与UIScreen代码中的差异,你也可以从这个hub添加文件并加载在名称retina4图像和其它捆绑只是@2x~568h的笔尖,而无需编辑您的代码,它:)