我不是UIViewController从情节提要中使用a ,而是要有一个自定义init函数,可以在其中传递NSManagedObjectID某些对象的。我只想像super.init()在Objective- C中一样打电话。像这样:
UIViewController
init
NSManagedObjectID
super.init()
init(objectId: NSManagedObjectID) { super.init() }
但是我收到以下编译器错误:
必须调用超类UIViewController的指定初始化程序
我可以不再这样做吗?
对于指定的初始化器UIViewController是initWithNibName:bundle:。您应该打电话给它。
initWithNibName:bundle:
参见http://www.bignerdranch.com/blog/real-iphone-crap-2-initwithnibnamebundle- is-the-designated-initializer-of- uiviewcontroller/
如果您没有笔尖,请nil输入nibName(捆绑包也是可选的)。然后,你可以在构建自定义视图loadView或通过添加子视图self.view中viewDidLoad,你一样使用。
nil
loadView
self.view
viewDidLoad