iPhone X:使用了错误的启动屏幕方向
Posted
技术标签:
【中文标题】iPhone X:使用了错误的启动屏幕方向【英文标题】:iPhone X: Incorrect launch-screen orientation used 【发布时间】:2017-09-17 11:57:28 【问题描述】:我正在 iPhone X 上测试图像启动屏幕并遇到了一个奇怪的行为。所以我想在打开雷达之前请求一些反馈:
我创建了尺寸为1125 x 2436 Pixel
(纵向)和2436 x 1125 Pixel
(横向)的纵向和横向启动屏幕。然后我将它们添加到资产目录中,它们被正确拾取:
到目前为止一切顺利。然后我在 iPhone X 模拟器上运行该应用程序(我之前已重置该应用程序以确保没有缓存任何内容)并显示(拉伸的)横向图像。
我验证了 png 源具有有效的非 alpha 背景,但仍然无法显示正确的启动屏幕。我注意到肖像图像甚至没有复制到生成的产品中:
所以这可能表明 Xcode 9 存在问题。任何反馈都非常受欢迎,谢谢大家!
编辑:旁注:从资产目录中删除横向图像时,会正确复制和拾取纵向图像。
更新 2017 年 9 月 29 日:Apple 确认这确实是 Xcode 中的一个问题,并将提供给相关的工程团队。
【问题讨论】:
我有同样的错误,如果你使用模拟器并进行旋转,你可以看到麦克风也旋转!在这种情况下,底部显示的安全区域怎么样!?错误? “Apple 确认这确实是 Xcode 中的一个问题,并将提供给相关的工程团队。” 很高兴这次更新。 【参考方案1】:对于 iPhone X,请尝试使用启动屏幕故事板而不是启动图像。
Apple 开发者网站上新的“为 iPhone X 构建应用程序”视频中提到了这一点:https://developer.apple.com/videos/play/fall2017/201/
(在 2:50 标记处提到。)
要设置启动屏幕故事板,请创建故事板文件并从项目设置的“启动屏幕文件”下拉菜单中选择它。
【讨论】:
不确定这是真的还是他们改变了主意,否则他们不会提供使用图像启动屏幕的选项。 iPhone X 的软件在今年晚些时候发布之前仍将发生变化。我链接的视频是我能找到的与您的问题相关的最官方和最新的资源。使用启动故事板对您有用吗? 是的,故事板工作正常。但在我的情况下,它通常必须为这两种情况工作 - 复杂的原因:-)。如果它与您相关,请复制 openradar.appspot.com/radar?id=6124283306704896 以引起注意。我正在等待本周来自 Apple 的反馈。 当您创建新的 LaunchImage 集时,您可以看到用于添加 LaunchImage 的新 iPhoneX 选项。所以你不必使用故事板(但也许这个选项更好......?) @Beber 在我上面回答中链接的 Apple 视频中,他们特别提到添加启动故事板以确保您的应用在 iPhone X 上运行。【参考方案2】:这最终在 Xcode 9.1 Beta 2 及更高版本中得到修复!
【讨论】:
【参考方案3】:至少在模拟器上,仅使用纵向图像(而不使用横向图像)似乎可行。无论如何,iPhone X 只能从纵向启动应用程序。不知道此解决方案是否会在实际设备上产生问题(撰写本文时 iPhone X 尚不可用)。我猜它不会。
【讨论】:
【参考方案4】:这显然是一个 xCode 9 错误,我有同样的问题,资产的文件名也不正确,按照以前的命名约定,必须有 2 个文件,LaunchImage-1100-Portrait-2436h@3x.png 和LaunchImage-1100-Landscape-2436h@3x.png (注意为什么是 2436h 而不是 812h,所有其他分辨率都以点而不是像素表示)
【讨论】:
以上是关于iPhone X:使用了错误的启动屏幕方向的主要内容,如果未能解决你的问题,请参考以下文章
支持iPhone 6和iPhone 6+,具有不同的启动/启动屏幕图像,适用于iPad纵向和横向方向