通过检查设备的高度很容易检查设备是 iPhone 5 还是 iPhone,如下所示
if([UIScreen mainScreen].bounds.size.height == 568){
// iPhone 5
} else{
// Regular iPhone
}
但是,我想知道,在进入 else body 480 height之后,我想检查它的 iPhone 还是 iPhone 视网膜?
怎么能这样做?
我的主要目标是设置导航,如我的另一个问题中所述
谢谢
如果你真的需要这个,你可以使用这样的东西:
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {
if ([[UIScreen mainScreen] scale] >= 2.0) {
// retina
}
else {
// not retina
}
}
在 pch 文件中定义为宏,如下所示
#define IS_RETINA ([[UIScreen mainScreen] respondsToSelector:@selector(displayLinkWithTarget:selector:)] && ([UIScreen mainScreen].scale == 2.0))
我猜你必须检查屏幕是否响应scale
消息并且它的值是2.0
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]
&&
[[UIScreen mainScreen] scale] == 2.0)
{
//Retina
}
else
{
//Not Retina
}
用这个方法。。
返回 YES 表示它的视网膜,否则非视网膜,
+(BOOL)iPhoneRetina
{
return ([[UIScreen mainScreen] respondsToSelector:@selector(scale)] && [[UIScreen mainScreen] scale] == 2.0) ;
}