我试图在我打算为iOS设备部署的本机应用上设置启动画面。
众所周知,目标有几种不同的屏幕(根据像素密度,宽高比和其他因素而变化),所以我必须提供一些图像。似乎至少有三种提供映射的方法,允许iOS决定在任何场景中使用哪个图像; 我的理解是,这些方法的任何一个本身就足够了:
Default.png
,Default@2x~ipad.png
,Default-568h@2x.png
等命名它们。)UILaunchImages
字典项,并为每个指向所需图像的方案添加字典条目我强烈倾向于使用第三种方法,这在很大程度上是因为就定义每种显示方案的识别特征而言,它需要最少的技术精度。但是当我在我的iPhone5上测试它时它不起作用 - 闪屏是黑色的,而不是显示我的彩色图像。我在LaunchImage板上的每个位置都放置了一个图像,这告诉我Xcode6附带的LaunchImage骨架根本没有一个与iPhone5相对应的点。那不是对的。 (是的,我的图片是PNG。)
许多教程告诉我在资产目录中创建一个新的图像集(它有不同的骨架),但是"应用程序图标和启动图像"配置只允许我选择LaunchImages的项目。
在线有很多资源可以记录前两种方法 - 即依赖于文件系统约定,或者在Info.plist中定义映射 - 但似乎并没有真正解决资产目录方法。
有人能指出我正确的方向吗?
编辑:有趣的是,当我将我的@ 1x图像放在LaunchImage板上的每个位置时,项目无法构建,因为"没有适用的内容。"当我将@ 2x图像放入所有Retina点时,应用程序会构建,但是闪屏是黑色的。
这会揭示某些事情吗?
答案 0 :(得分:0)
经过一些实验,结果证明手机正在默默地拒绝分配给该场景的图像,因为图像尺寸不正确。我提供的图像比适当的图像略大,显然iOS处理它的方式是显示黑色启动屏幕而不会发出任何有用的诊断信息。
我从this SO post得到了确切的尺寸。