【问题标题】:Changing the initial screen更改初始屏幕
【发布时间】:2021-11-29 19:56:59
【问题描述】:

我更改了不在Main 故事板上的初始屏幕,我所做的与谷歌上写的完全一样:

  1. 从视图控制器属性检查器is initial view controller更改

  2. 删除了info 文件中的“主故事板文件基本名称”行和“故事板名称”行

  3. 在场景委托中添加以下代码:

        window = UIWindow(frame: windowScene.coordinateSpace.bounds)
        window?.windowScene = windowScene
        window?.makeKeyAndVisible()
        let vc = LoginViewController()  // view controller which must be the new one
        window?.rootViewController = vc

我做了以上所有操作,但是在运行 xCode 项目后,我只看到黑屏和错误 Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value 这个错误在 LoginViewController 的文本字段中,我尝试重新附加 IBOutlet 但它似乎不起作用

有什么解决办法吗?

附言我不知道知道这是否会有所帮助,但 LoginViewController 完全复制了另一个 xCode 项目的故事板。

【问题讨论】:

    标签: ios swift uikit


    【解决方案1】:

    问题出在这一行:

    LoginViewController() 
    

    这个视图控制器有出口,这意味着它是在故事板中设计的。您在这里要做的不是像您那样创建一个新的 LoginViewController,而是从情节提要中提取所需的 LoginViewController 实例。

    【讨论】:

    • 您的博客绝对有帮助。谢谢。
    • 您的回答确实帮助了我,但我仍然遇到同样的问题,问题是单击按钮后我的视图转到另一个视图控制器但在该视图控制器中按钮不起作用,我重新阅读你的博客,确实像你说的那样,但它仍然不起作用。
    • 如果按钮做了某事,并且您不再崩溃,那么我的工作就完成了。如果您对其他问题有新问题,请单击按钮并提出问题。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多