发布于 2012-09-23 23:11:48
使用这个
#define IS_IPHONE5 (([[UIScreen mainScreen] bounds].size.height-568)?NO:YES)
发布于 2012-09-22 01:48:52
我认为你应该专注于首选的显示模式,而不是检测iPhone5。谁知道苹果将生产什么设备,但如果你的软件支持这种模式,它将是未来的证明。
BOOL isiPhone5 = CGSizeEqualToSize([[UIScreen mainScreen] preferredMode].size,CGSizeMake(640, 1136));
将来,人们可能想要动态更改首选的显示模式。例如,断开AppleTV与720p电视的连接并插入1080p,当然不需要重启应用程序。
发布于 2012-09-22 04:38:57
在初始化中添加以下代码:
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 *)];
}
}
这是我在另一个问题here中发布的答案。
https://stackoverflow.com/questions/12535471
复制相似问题