有很多关于iPhone 6和iPhone 6 Plus屏幕尺寸的文章和问题。 This article提供了很好的解释。
然而,在模拟器中测试我的应用程序时我很困惑。
我在AppDelegate
中有以下代码。
- (BOOL) application: (UIApplication *) application didFinishLaunchingWithOptions: (NSDictionary *) launchOptions
{
UIScreen *screen = [UIScreen mainScreen];
NSLog(@"Screen width %.0f px, height %.0f px, scale %.1fx",
(double) screen.bounds.size.width,
(double) screen.bounds.size.height,
(double) screen.scale);
return YES;
}
我从各种设备的iOS模拟器中获得以下结果:
iPhone 4S:Screen width 320 px, height 480 px, scale 2.0x
iPhone 5:Screen width 320 px, height 568 px, scale 2.0x
iPhone 5S:Screen width 320 px, height 568 px, scale 2.0x
iPhone 6:Screen width 320 px, height 568 px, scale 2.0x
iPhone 6 Plus:Screen width 320 px, height 568 px, scale 2.0x
结果适用于iPhone 4S,iPhone 5和iPhone 5S。但是,我预计iPhone 6和iPhone 6 Plus的屏幕尺寸会更大,我也希望iPhone 6 Plus能够达到3.0。有什么问题?
感谢您的解释。
答案 0 :(得分:32)
您似乎未向应用提供正确的启动图像。当没有正确的启动图像设置时,应用程序将像iPhone 5 / 5S一样运行,这就是为什么在记录时遇到这些令人困惑的结果的原因。 iPhone 6屏幕尺寸为375x667像素刻度x2,iPhone 6 + 414x736像素刻度x3。因此,如果你想为iPhone 6设置启动图像,它应该分别为750x1334像素大小和1242x2208分别用于iPhone 6+。祝你好运!
修改强>
正如rmaddy在评论中提到的,最好使用具有适当布局约束的启动画面故事板来适应所有屏幕,而不是为所有屏幕提供大量图像(这也会增加应用程序大小)。
答案 1 :(得分:8)
您必须在适用于iPhone 6和6+的Imageasset中添加适当分辨率的启动图像。
如果您不知道分辨率请检查右侧导航器>选择第三个选项。现在在屏幕截图中,您可以看到Expected size 1242x2208 pixel
请查看附带的截图。一旦你添加了所有图像,那么只有你才能得到正确的。
对于iPhone 6,它将记录
屏幕宽度375像素,高度667像素,标度2.0x
for 6 +
屏幕宽度414 px,高度736 px,比例3.0x
答案 2 :(得分:3)
向项目添加启动屏幕, - >文件 - >新文件 - >在iOS用户界面 - >启动屏幕。 然后在应用程序的“常规视图”中,在“启动屏幕文件”字段中选择LaunchScreen.xib。 再试一次你的代码,你就可以看到真正的大小。
答案 3 :(得分:0)
对于可能提出问题的其他人:
确保您的启动图像名称与项目中的任何其他图片不同,否则Xcode可能会混淆并且还会返回iPhone 5的宽度和高度。
答案 4 :(得分:0)
就我而言,我在iPhone中找到了有关显示器的设置。 (设置 - 显示和亮度 - 显示变焦)。
如果您的设置为" Zoomed",则屏幕宽度为320px。