繁体   English   中英

iOS 9 xCode 7内置应用程序显示黑色矩形而不是启动屏幕

[英]iOS 9 xCode 7 built app displays black rectangle instead of splash screen

我知道这个问题似乎是几个现有问题的重复,但事实并非如此。

我正在为通用(iPad / iPhone)应用程序不再显示初始屏幕的问题而苦苦挣扎。

在升级到iOS 9和Xcode 7之前,不存在此类问题。 升级后,没有对启动屏幕进行任何更改。

与问题相关的技术数据:

  • 支持的设备是iPad(仅横向)和iPhone(纵向/横向)
  • 我使用“ Launch Screen.xib”,它具有一个UIImageView,其中设置了尺寸类和约束,因此它始终是全屏的。
  • 我已将所有初始屏幕图像添加到图像资源中(iPad Portrait图像除外)
  • 我使用Xcode版本7.0.1(7A1001)和iOS 9.0.2
  • 在iPad上不会发生此问题

iPhone 5s上的错误启动画面看起来像这样: iPhone5S显示错误的启动画面

这是在纵向模式下完成的,因此此“黑色方块”的顶部和底部都有白色方块。

我昨天在这个问题上苦苦挣扎,但设法通过将启动屏幕重命名为“ LaunchScreen.xib”(没有空格)来解决了这个问题。 但是今天早上这个问题又出现了。

我尝试过的事情:

  • 再次删除并创建有空间和无空间的LaunchScreen.xib
  • 创建LaunchScreen.storyboard文件而不是xib
  • 添加LaunchScreen.xib中使用的@ 2x和@ 3x版本的图像
  • 删除/添加/替换图像资产中的图像
  • 清理,构建清理,甚至删除派生数据
  • 重新启动设备,重新安装应用程序,无需构建便重新启动以及我想到的许多其他解决方案。

没有任何帮助,所以也许有人已经解决了类似的问题,并且可以将我引向正确的方向。

编辑1

因此,我将使用的LaunchScreen.xib图像从“ Default.png”重命名为“ DefaultSplash.png”。 这可以立即修复iPhone上的所有问题。 但是现在我有一个新问题-iPad启动屏幕现在是黑色的 如果我将LaunchScreen图像设置为项目中使用的其他图像,则Ipad可以将其显示为启动屏幕,而不会出现任何问题,但是Default.png和DefaultSplash.png现在都不能在ipad上使用。 这真是一个奇怪的问题。

所以我解决了这样的问题:

自从我将文件重命名为LaunchScreen.xib ,它解决了iPhone上的一个问题,但在iPad上引起了类似的问题。 从那时起,我不能为相同的xib使用相同的图像文件名(即,如果图像“ Default.png”失败,则不能使用它...错误?)。 因此,我创建了两个文件LaunchScreen.xibLaunchScreen~iphone.xib ,每个文件都有单独的图像文件。 现在可以了。

看起来很丑陋,但确实可行。

就我而言,“启动Screen.xib”中的图像没有显示。 我不得不重命名它们并在nib文件中重置新名称以使其正常运行。

Xcode7 iOS 9及更高版本有所变化。 他们已经修改了启动屏幕(我们将得到黑屏)。如果您更改部署目标,则可以看到先前的启动屏幕。 仅存在空的视图控制器,因此我们对其进行了更改。 根据资产中的要求,将图像添加到图像集中。

听起来可能很愚蠢,但可能会发生与这种情况有关的事情:

如果您钩住了任何插座,然后通过更改自定义类破坏了插座,则将在没有任何警告的情况下得到此黑屏行为,而不是任何非启动情节提要/场景造成的典型崩溃,这将导致在应用启动之前出现黑屏。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM