我正在尝试为现有的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];
}
}
答案 0 :(得分: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.*/
}
答案 1 :(得分:0)
答案是here。基本上,你没有。在iOS 6中使用新的约束布局系统。如果您必须为具有不同屏幕尺寸/分辨率的每个新设备修改布局,您将追逐自己的尾巴。