检测iPhone 5 4“屏幕
可能重复:
如何检测iPhone 5(宽屏设备)?
有没有一种方法可以检测到目前的设备是iPhone 5? 更具体地说,如果它使用新的4“屏幕?
用这个
#define IS_IPHONE5 (([[UIScreen mainScreen] bounds].size.height-568)?NO:YES)
我认为你应该专注于首选的显示模式,而不是检测iPhone5。 谁知道苹果将制造什么设备,但是如果你的软件支持这种模式,那将是未来的保障。
BOOL isiPhone5 = CGSizeEqualToSize([[UIScreen mainScreen] preferredMode].size,CGSizeMake(640, 1136));
在未来,人们可能想要改变飞行中首选的显示模式。 例如断开AppleTV从720p电视和插头到1080P,当然不重新启动应用程序。
在你的初始化中添加这个代码:
if([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone){ if(UIScreenOverscanCompensationScale==1136/640){ //move to your iphone5 storyboard [UIStoryboard storyboardWithName:(NSString *) bundle (NSBundle *)]; } else{ //move to your iphone4s storyboard [UIStoryboard storyboardWithName:(NSString *) bundle (NSBundle *)]; } }
这是我在这里发表的另一个问题的答案。
将此代码添加到您的应用程序:
if ([UIScreen mainScreen].scale == 2.f && screenHeight == 568.0f) {// iPhone 5 code} else {// previous version code}