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
(portrait/landscape)
- 我使用 "Launch Screen.xib",它有一个大小为 类 的 UIImageView 和
设置限制,使其始终全屏显示。
- 我已经在图像资产中添加了所有启动画面图像(iPad
纵向的)
- 我使用 Xcode 版本 7.0.1 (7A1001) 和 iOS 9.0.2
- 此问题不会发生在 iPad
在 iPhone 5 秒后,错误的启动画面如下所示:
这是纵向模式制作的,所以上面和下面都有白色方块"black square"。
我昨天一直在努力解决这个问题,但我通过将启动屏幕重命名为 "LaunchScreen.xib"(没有 space)来设法解决它。但是今天早上问题又出现了。
我尝试过的事情:
- 使用和不使用 space
再次删除和创建 LaunchScreen.xib
- 正在创建 LaunchScreen.storyboard 文件而不是 xib
- 添加在 LaunchScreen.xib
中使用的图像的 @2x 和 @3x 版本
- Removing/adding/replacing 图片资产中的图片
- 清理、构建清理甚至删除派生数据
- 重启设备,重新安装应用程序,重新启动而不构建以及我能想到的许多其他解决方案。
没有任何帮助,所以也许有人已经解决了类似的问题,可以引导我走向正确的方向。
编辑 1
所以我将 "Default.png" 使用的 LaunchScreen.xib 图片重命名为 "DefaultSplash.png"。这立即解决了 iPhone 上的所有问题。但是现在我遇到了一个新问题 - iPad 启动画面现在是 黑色 。如果我将 LaunchScreen 图像设置为项目中使用的其他图像,Ipad 将其显示为闪屏没有任何问题,但 Default.png 和 DefaultSplash.png 都不能在 ipad 上使用现在。这真是个奇怪的问题。
Xcode7iOS9 以后有变化。他们已经修改了 Launchscreen(我们将得到黑屏)。如果您更改部署目标意味着您可以看到以前的启动屏幕。只有空的视图控制器存在,因此我们对其进行了更改。
根据 assets 中的要求,在 imagecassets 中添加图像。
所以我解决了这个问题:
由于我重命名了文件 LaunchScreen.xib
,它解决了 iPhone 上的一个问题,但在 [=24 上引起了类似的问题=]。从那时起,我不能对同一个 xib 使用相同的图像文件名(即,如果图像 "Default.png" 失败,它就不能再使用了……错误?)。所以我创建了两个文件,LaunchScreen.xib
和 LaunchScreen~iphone.xib
,每个文件都有单独的图像文件。现在可以正常使用了。
看起来很丑而且有问题,但它确实有效。
在我的例子中,"Launch Screen.xib" 中的图像没有显示。我不得不重命名它们并在 nib 文件中重置新名称以使其工作。
这听起来可能很愚蠢,但可能会发生与此场景相关的事情:
如果您连接任何插座,然后通过更改自定义 class 来破坏它,您将在没有任何警告的情况下出现这种黑屏行为,而不是任何未启动的典型崩溃 storyboard/scenes 这将导致应用启动前黑屏。
我知道这个问题可能看起来像是一些现有问题的重复,但事实并非如此。
我正在努力解决通用 (iPad/iPhone) 应用程序不再显示启动画面的问题。
在升级到 iOS 9 和 Xcode 7 之前,不存在此类问题。升级后启动画面没有任何变化。
与问题相关的技术资料:
- 支持的设备是 iPad(仅限横向)和 iPhone (portrait/landscape)
- 我使用 "Launch Screen.xib",它有一个大小为 类 的 UIImageView 和 设置限制,使其始终全屏显示。
- 我已经在图像资产中添加了所有启动画面图像(iPad 纵向的)
- 我使用 Xcode 版本 7.0.1 (7A1001) 和 iOS 9.0.2
- 此问题不会发生在 iPad
在 iPhone 5 秒后,错误的启动画面如下所示:
这是纵向模式制作的,所以上面和下面都有白色方块"black square"。
我昨天一直在努力解决这个问题,但我通过将启动屏幕重命名为 "LaunchScreen.xib"(没有 space)来设法解决它。但是今天早上问题又出现了。
我尝试过的事情:
- 使用和不使用 space 再次删除和创建 LaunchScreen.xib
- 正在创建 LaunchScreen.storyboard 文件而不是 xib
- 添加在 LaunchScreen.xib 中使用的图像的 @2x 和 @3x 版本
- Removing/adding/replacing 图片资产中的图片
- 清理、构建清理甚至删除派生数据
- 重启设备,重新安装应用程序,重新启动而不构建以及我能想到的许多其他解决方案。
没有任何帮助,所以也许有人已经解决了类似的问题,可以引导我走向正确的方向。
编辑 1
所以我将 "Default.png" 使用的 LaunchScreen.xib 图片重命名为 "DefaultSplash.png"。这立即解决了 iPhone 上的所有问题。但是现在我遇到了一个新问题 - iPad 启动画面现在是 黑色 。如果我将 LaunchScreen 图像设置为项目中使用的其他图像,Ipad 将其显示为闪屏没有任何问题,但 Default.png 和 DefaultSplash.png 都不能在 ipad 上使用现在。这真是个奇怪的问题。
Xcode7iOS9 以后有变化。他们已经修改了 Launchscreen(我们将得到黑屏)。如果您更改部署目标意味着您可以看到以前的启动屏幕。只有空的视图控制器存在,因此我们对其进行了更改。 根据 assets 中的要求,在 imagecassets 中添加图像。
所以我解决了这个问题:
由于我重命名了文件 LaunchScreen.xib
,它解决了 iPhone 上的一个问题,但在 [=24 上引起了类似的问题=]。从那时起,我不能对同一个 xib 使用相同的图像文件名(即,如果图像 "Default.png" 失败,它就不能再使用了……错误?)。所以我创建了两个文件,LaunchScreen.xib
和 LaunchScreen~iphone.xib
,每个文件都有单独的图像文件。现在可以正常使用了。
看起来很丑而且有问题,但它确实有效。
在我的例子中,"Launch Screen.xib" 中的图像没有显示。我不得不重命名它们并在 nib 文件中重置新名称以使其工作。
这听起来可能很愚蠢,但可能会发生与此场景相关的事情:
如果您连接任何插座,然后通过更改自定义 class 来破坏它,您将在没有任何警告的情况下出现这种黑屏行为,而不是任何未启动的典型崩溃 storyboard/scenes 这将导致应用启动前黑屏。