iOS 8:启动屏幕StoryBoard显示黑色[单个XIB文件工作正常]

Dar*_*lia 19 xcode storyboard ios swift

所以我尝试使用本教程为我的iOS 8应用程序创建一个启动故事板

但是,当我启动应用程序时,我只会看到黑屏.单个启动screen.xib文件工作正常,但是,当我尝试使用故事板时,它不起作用.

我尝试了一个只有一个视图控制器的故事板,但它仍然给我一个黑屏,因此我认为问题是我的设置中的故事板文件.有任何想法吗?

[XCode版本6.4]

编辑:所以我只想澄清它是黑色的启动屏幕.应用程序加载完成后,主故事板本身就会正确显示

Cra*_*att 23

阅读教程并测试它,它没有说两件事:

1:您需要UIViewController.storyboard文件中添加一个,然后将其选为初始控制器.

2:如果您希望更改的不仅仅是启动屏幕,则必须转到项目设置并将"主界面"设置为相应的.storyboard.

完成后,您需要做的就是编辑与ViewController类的UIButton/Label/etc连接.

编辑:

为了清楚起见,您可以将UIView设置为初始控制器,方法是在其各自的故事板文件中选择它,然后打开属性检查器."初始控制器"的选项位于中间位置.

  • 实际上,没有."初始控制器"是故事板的初始控制器,而不是整个应用程序. (4认同)

Eht*_*san 18

对于在启动屏幕中使用UIImageView的人

确保在属性检查器中使用没有扩展名的图像名称.

因此,例如,如果您的图像文件已命名launcher.png,则仅用launcher作图像名称.

这将在编辑器中将图像显示为无效(?),但在设备上运行时将正确显示.

(不要问我为什么会这样.请问Apple.)

在此输入图像描述


Swi*_*ect 8

没有一个答案具有所需的所有步骤,因此这是一个详尽的解决方案.

故事板

首先创建LaunchScreen.storyboard.Xcode>文件>新建>文件...>故事板> LaunchScreen.storyboard并将其添加到所有适当的目标.
在此故事板中,创建一个类型的单个视图控制器UIViewController.完成启动屏幕所需的所有魔法,然后按照以下步骤操作:

  1. LaunchScreen.storyboard>显示文件检查器> 用作启动屏幕
  2. LaunchScreen.storyboard> View Controller> Show the Attributes inspector> 是Initial View Controller
  3. 项目>常规>部署信息>主界面> [iPhone]和[iPad]的LaunchScreen
    重复
  4. 项目>常规>应用程序图标和启动图像>启动屏幕文件> LaunchScreen
  5. 如果设置得当,你的Info.plist应该有LaunchScreen .storyboard,没有.storyboardUILaunchStoryboardNameUIMainStoryboardFile属性:

    <key>UILaunchStoryboardName</key>
    <string>LaunchScreen</string>
    <key>UIMainStoryboardFile</key>
    <string>LaunchScreen</string>
    
    Run Code Online (Sandbox Code Playgroud)

笔记:

  1. 这与使用"启动屏幕文件">" 资产"的旧设备的旧映像兼容.
  2. 特别注意LaunchScreen.storyboardMain.storyboard.一个用于启动,另一个用于您的应用入口点.他们都需要设置初始视图控制器.

  • 当我执行第3步时,我的启动屏幕在启动时仍然是黑色的,然后在加载应用程序后,我的启动屏幕故事板被呈现而不是我的主要故事板......所以我认为这一步是不对的. (5认同)
  • 我同意@primehalo.步骤#3似乎不对.同样的事情发生在我身上.事实上,主界面将是启动屏幕是没有意义的.确保Main.storyboard和LaunchScreen.storyboard之间没有差异是什么意思?你有一个差异的例子吗? (3认同)

小智 5

在用于启动的故事板中,请确保为其中存在的单个视图控制器选择了Is初始视图控制器选项.