更改初始屏幕
Changing the initial screen
我更改了不在 Main
故事板上的初始屏幕,我所做的与 google 上写的完全一样:
从视图控制器属性检查器更改is initial view controller
删除了 info
文件中的“主情节提要文件基本名称”行和“情节提要名称”行
在场景委托中添加了以下代码:
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
但它似乎不起作用
任何解决方案?
p.s。我不知道知道它是否有帮助,但是 LoginViewController
完全复制了另一个 xCode 项目的故事板。
问题出在这一行:
LoginViewController()
这个视图控制器有出口,这意味着它是在故事板中设计的。您在这里要做的不是像您正在做的那样创建一个新的 LoginViewController,而是从故事板中提取所需的 LoginViewController 实例。
我更改了不在 Main
故事板上的初始屏幕,我所做的与 google 上写的完全一样:
从视图控制器属性检查器更改
is initial view controller
删除了
info
文件中的“主情节提要文件基本名称”行和“情节提要名称”行在场景委托中添加了以下代码:
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
但它似乎不起作用
任何解决方案?
p.s。我不知道知道它是否有帮助,但是 LoginViewController
完全复制了另一个 xCode 项目的故事板。
问题出在这一行:
LoginViewController()
这个视图控制器有出口,这意味着它是在故事板中设计的。您在这里要做的不是像您正在做的那样创建一个新的 LoginViewController,而是从故事板中提取所需的 LoginViewController 实例。