我有一个通用的应用程序。启动画面适用于iPhone,但在iPad上看不到同样的效果。相反,它的位置会出现黑屏。我已经完成了在这方面发布的问题并遵循了这些步骤但无济于事。我在我的项目中使用资产目录。故事板尚未使用。使用的图像的名称和尺寸如下:
1. Default-Landscape.png (1024x768)
2. Default-Landscape@2x.png (2048x1536)
3. Default-Portrait.png (768x1024)
4. Default-Portrait@2x.png (1536x2048)
5. Default-568h.png (640x1136)
6. Default.png (320x480)
7. Default@2x.png (640x960)
如果我使用的尺寸有任何问题,请告诉我。我为Launch图像的Attributes Inspector选择的选项如下图所示:
以下是启动图像的设置:
我将相同的启动图像添加到示例应用程序,启动屏幕在iPad上完美显示。
编辑: 根据@iphonemaclover的建议,问题解决了“你还应该删除后缀为(iPad)或~ipad的任何其他密钥。”在我删除的plist中有一个关键的UILaunchImages~ipad。现在,启动屏幕可以正常显示。
答案 0 :(得分:2)
请删除您的派生数据并清理您的项目。 如果你跑过它,也要重置你的simmulater。 希望它会有所帮助。 另外,请检查您是否在目标设置中选择了通用应用程序。
修改强>
您可能应该为启动图像使用资产目录,这可能是Xcode所期望的。您可以在目标的常规选项卡中查看Xcode所期望的内容:
更多建议
问:为什么我的应用会在iPad上启动黑屏?
答:专为iPhone设计的应用程序在iPad上运行时可能会启动为空白屏幕。这是由应用程序包中存在空的iPad特定故事板以及应用程序的信息属性列表(Info.plist)文件中的特定于iPad的UIMainStoryboardFile键引起的。如果选择了Universal选项,则两者都会由各种Xcode模板项目自动创建。
...
在Xcode中
在文件导航器中查找名为MainStoryboard_iPad.storyboard的文件。如果此文件存在,请将其从项目中删除。
在您应用的信息属性列表
中查找名为主故事板文件基本名称(iPad)或UIMainStoryboardFile~ipad的键。如果存在此密钥,请将其删除。您还应该删除后缀为(iPad)或~ipad的任何其他密钥。
最后,在iPad或iPad模拟器上测试您的应用,并验证其是否符合预期。
您应该将启动图像添加到资产目录中,并确保正确配置显示的设置。
如果您还没有,则可以转到File > New > File
标签下的Resource
添加资产目录。
答案 1 :(得分:0)
如果您未在斜杠屏幕中加载图像,是否会获得白色视图?如果您没有收到,则不会加载您的视图。这就是你获得黑屏的原因。
答案 2 :(得分:0)
可能与大多数人的问题无关,但我想补充一个可能的问题。我的项目有同样的问题。我可以用X代码看到我的iPad图像,但是我错过的是标题下面的标题是“未分配”而不是“ iPad Portrait”(这可能是因为它是一个最初仅为iPhone配置的样板React Native项目)。
使我的应用程序通用后,我需要重新创建LaunchImage集,然后为iPad指定占位符。我重新添加了所有图像,分配了新的启动图像集,进行了清理,构建并修复了该问题。希望它可以节省其他人的时间。