【发布时间】:2019-05-11 11:27:22
【问题描述】:
我正在尝试在我的 Swift 应用程序中初始化 UIViewController,但我遇到了一个我找不到任何明确答案的问题。
我想从 FlowCoordinator 调用它来初始化控制器,但由于需要 init?(coder: NSCoder) 函数,我的初始化器需要一个 NSCoder 对象。
MyAwesomeController()
有没有办法以不同的方式初始化控制器,而无需传递NSCoder 对象?
如果没有,如何创建这样的对象以避免以下异常:
'NSInvalidArgumentException',原因:'*** -decodeObjectForKey:不能 发送到 NSCoder 类的抽象对象:创建一个具体的 实例!'
非常感谢您
【问题讨论】:
-
你可以创建一个额外的初始化器。
-
谢谢@matt,你解决了我的问题,我之前没有得到我正在创建一个新控制器,而不是我已经链接到情节提要的那个。
-
不客气!这些文章旨在帮助解决此类常见问题。所以我很高兴能帮助你“理解”这个概念。
标签: swift uiviewcontroller initialization