18

可能重复:
如何检测 iPhone 5(宽屏设备)?

我正在尝试向现有 ios4 项目添加新视图以处理新的 iphone5 屏幕尺寸。

但是我这里没有要测试的iphone,我用来测试屏幕尺寸的代码不起作用,只是想知道是否有另一种检测设备类型的方法?

NSLog(@"%f", [ [ UIScreen mainScreen ] bounds ].size.height);

if([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone){
    if([UIScreen mainScreen].bounds.size.height == 568.0)
    {
        //move to your iphone5 storyboard
        [self changeView:splashScreenBIGV viewH:splashScreenH animLength:SCREEN_CHANGE_ANIM_LENGTH];
   }
    else{
        //move to your iphone4s storyboard
        [self changeView:splashScreenV viewH:splashScreenH animLength:SCREEN_CHANGE_ANIM_LENGTH];            
    }
}
4

2 回答 2

60

对于我的通用应用程序Forex App,我只是使用屏幕高度检测概念,如下所示:

CGSize screenSize = [[UIScreen mainScreen] bounds].size;

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
    if (screenSize.height > 480.0f) {
        /*Do iPhone 5 stuff here.*/
    } else {
        /*Do iPhone Classic stuff here.*/
    }
} else {
    /*Do iPad stuff here.*/
}
于 2012-10-06T18:04:15.800 回答
0

答案在这里。基本上,你没有。使用 iOS 6 中新的约束布局系统。如果您必须为每台具有不同屏幕尺寸/分辨率的新设备修改布局,您将陷入困境。

于 2012-09-26T15:29:24.627 回答