【发布时间】:2016-03-07 17:10:07
【问题描述】:
我在我的 Swift 应用程序中使用了启动屏幕故事板和主故事板。有时应用程序会显示启动故事板,然后进入黑屏。其他时候它正确地进入主故事板入口点。几乎看起来它是依赖于构建的,因为如果我清理和重建几次,就会弹出一个运行正常的构建。有什么想法可能导致这种情况吗?
添加一些说明:
- SplashScreen.storyboard 在目标设置中设置(好问题)。
- 在真实设备和模拟器中都会发生这种情况,但并非总是如此。
- 在这个阶段我没有进行任何联网(同步或其他方式)
- 停电似乎只在转换到一个特定视图时发生
- 视图的 viewWillDisplay 等代码即使在黑屏时也会执行,但不显示任何 VISIBLE
这可能会有所帮助:我在有问题的视图中输入了以下代码:
override func viewDidAppear(animated: Bool) {
print(self.view.layer.bounds.width);
print(self.view.layer.bounds.height);
}
当出现黑屏问题时,我得到 260 和 17。当视图正确显示时,我得到 320 和 568 的 5s(模拟器)尺寸。这对任何人有帮助吗?
【问题讨论】:
-
在
Project Navigator,点击你的项目。然后点击Target(不是Project),向下滚动到App Icons and Launch Images。我怀疑你的问题在于你的Launch Screen File。 -
您的根控制器设置正确吗?您是否在您的代码中以编程方式更改根控制器?
-
请出示您的代码。您是否在做任何违法的事情,例如在应用启动时同步联网?
-
@AdrianB 启动屏幕文件设置为正确的 LaunchScreen.storyboard。故事板正确显示,只是之后它变黑了。而且只是有时。
-
@TejaNandamuri 我不这么认为。我的根视图控制器正在使用 ViewController.swift 中的 viewWillAppear 中的一些代码。在其中,我正在检查该人是否已经注册了服务。如果有,我将它们发送(通过发送的 segue)到下一个视图。如果没有,我什么也不做,让注册屏幕显示(根视图)。
标签: ios swift storyboard xcode7