Apple的网站称其分辨率为1080p:1920 x 1080
但是,Xcode(今天推出的8.0 GM)所需的启动屏幕是2208 x 1242.
谁是对的?

我有一个现有的横向应用程序,我正在尝试添加iPhone 6/iPhone 6 Plus支持.当我支持iOS 6/7时,我只使用默认命名的启动肖像图像,将风景图像旋转为纵向(即,对于4"屏幕,我创建了一个横向1136x640,然后旋转以创建640×1136启动图像.)
我正在尝试为iOS 8和iPhone 6/6+工作,但还没有找到有效的东西.以下是我尝试过的一些事情:
我正在将一个项目从iOS7转换为iOS8,它使用自定义转换,需要在完成加载后捕获模态,afterScreenUpdates:YES并且看到整个屏幕缩放一秒钟并缩小比例.在iOS8上转换为照片时,我也会在部分和Yelp应用程序之间的iOS版Flickr应用程序中看到这种情况.
UIGraphicsBeginImageContextWithOptions(self.view.frame.size, YES, 22.0);
[self.view drawViewHierarchyInRect:self.view.frame afterScreenUpdates:YES];
UIGraphicsEndImageContext();
Run Code Online (Sandbox Code Playgroud)
添加更大的比例因子有助于更多地强调故障......但我只是在示例中按下按钮.
编辑这似乎发生在iPhone 6和6加上而不是5.

我正在尝试专门为iPhone 6和6 Plus构建我的应用程序版本,而我没有任何硬件,我必须在模拟器上进行测试!但似乎,模拟器有一个奇怪的错误!首先,我通过以下代码获得屏幕分辨率和比例:
UIScreen *mainScreen = [UIScreen mainScreen];
NSLog(@"Screen bounds: %@, Screen resolution: %@, scale: %f, nativeScale: %f",
NSStringFromCGRect(mainScreen.bounds), mainScreen.coordinateSpace, mainScreen.scale, mainScreen.nativeScale);
Run Code Online (Sandbox Code Playgroud)
所以这里是如何检测iPhone 6和6Plus(纵向模式):
#define iPhone6 ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone && [UIScreen mainScreen].bounds.size.height == 667)
#define iPhone6Plus ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone && [UIScreen mainScreen].bounds.size.height == 736)
Run Code Online (Sandbox Code Playgroud)
问题是 !当我在iPhone6/Plus模拟器上吃午餐时,编译器会给我一些iPhone 4"显示屏的信息:
2014-09-28 12:32:08.153 WOD[2924:42290]
Screen bounds: {{0, 0}, {320, 568}}, Screen resolution: <UIScreen: 0x7fa15be0f9b0; bounds = {{0, 0}, {320, 568}}; mode = <UIScreenMode: 0x7fa15bd0d4a0;
size = 640.000000 x 1136.000000>>, scale: …Run Code Online (Sandbox Code Playgroud) 我有一个为iOS8编译的应用程序.该应用程序设置为仅在项目设置中允许纵向方向.应用程序的视图不会按设计旋转到横向.在iOS7中,当您将设备旋转到横向时,键盘不会旋转.这是我想要的行为.
但是,在iOS8中,当您将设备旋转到横向时,键盘将错误地切换到横向.
我已在物理iPhone 6 Plus上对此进行了测试以确认问题.还通过模拟器在iPhone 5上进行了测试.知道如何解决这个问题吗?
潜在的修复
我不记得为什么我这样做但我有一些在应用程序启动时执行的引导代码:
d.window.rootViewController = tabBarController;
Run Code Online (Sandbox Code Playgroud)
其中tabBarController是应用程序的顶级选项卡栏控制器.删除此引导代码可修复此问题.

建议的调试
虽然这在iOS的早期版本中没有出现,但看起来iOS8的行为有点不同.我建议你查看你拥有的任何自举代码.您可能必须尝试一个示例项目并添加一些位,直到找到罪魁祸首,因为在我的情况下很难跟踪.下面提供的两个答案是解决症状而不是原因,所以我没有将它们标记为正确.
我用Cocos2d-iphone制作了几款游戏.所有这些都是使用Xcode 4或5创建的旧项目.除了一个似乎避免缩放模式并且在原生iPhone 6/6 Plus分辨率上运行的游戏外,所有游戏都在新的iPhone 6和6 Plus上进行了很好的扩展.该项目不包含有关决议启动图像,似乎禁用缩放模式作为解释这里
还有什么可以解锁原生分辨率吗?我希望游戏暂时以缩放模式运行,直到HD资产为新分辨率做好准备.
我创建了一个没有任何资产的新空项目,它正在使用原生屏幕尺寸.
在iPhone 6上的iOS8应用程序中,状态栏显示的位置远远大于主屏幕或其他应用程序中的状态栏.这只发生在iPhone 6上,我一直在寻找解决这个问题的方法,此时我还没有找到任何东西.如果有人有任何建议会很棒.以下是我的应用程序中正常状态栏和状态栏的图片.

经过一些初步测试,我们在iPhone6上的应用程序,我们看到状态栏(可能是整个应用程序)显示缩放的大小.当我说缩放时,我指的是桌面设置缩放与标准.该应用程序是使用较旧的故事板类型编写的,而不是使用Size类的新类型.
我的应用:

主屏幕:

这可能是一个模糊的问题,如果您需要截图,请告诉我.
我刚买了一部iPhone 6,我在"标准"变焦模式下设置了它.这使得所有文本,图标和Apple应用程序在手机上显示为"小".但是,所有其他应用程序(包括我的iOS 8优化应用程序和Facebook和Twitter等大牌应用程序)都以"放大"模式显示.当手机上的所有东西都变大时,包括时钟,电池电量,手机信号......等等,这是非常奇怪和分散注意力的.
有没有人知道如何强制第三方应用程序在手机处于标准模式时以标准模式显示,以及在手机放大时以放大模式显示?
我的应用程序基于Xcode 5.1.1,但是一旦在Xcode 6上升级,面对帧大小的问题,根据新的尺寸,iPhone 6的分辨率为750x1334但是,输出480x300,任何人都遇到了与iOS 8,iPhone 6或甚至在iPhone 6加模拟器上也是如此
只需运行应用程序和NSLog以下行
NSLog(@"Width - %f, Height - %f",self.view.frame.size.width,self.view.frame.size.height);
NSLog(@"Width - %f, Height - %f",self.view.bounds.size.width,self.view.bounds.size.height);
Run Code Online (Sandbox Code Playgroud)
输出:
宽度 - 480.000000,高度 - 300.000000宽度 - 480.000000,高度 - 300.000000
我知道从iOS 8开始,bound.size取决于方向,但我的问题是为什么它给我480x300代替实际的667x355
ios ×9
iphone-6 ×6
ios8 ×5
iphone ×3
objective-c ×3
xcode ×3
screenshot ×1
statusbar ×1
uikit ×1
uistatusbar ×1
xcode6 ×1