dmo*_*row 2 uiviewcontroller ios swift
关于Swift 2.0/Xcode 7beta3中UIViewController的指定和便利初始化器有一点混淆.我们的UIViewControllers都是在代码中定义的,没有Nib
目前,A类继承自UIViewController
class A : UIViewController {
convenience init() {
...
self.init(nibName:nil, bundle:nil)
...
}
}
Run Code Online (Sandbox Code Playgroud)
然后B类继承自A类,并应覆盖Conven init并将其称为super.init()
class B : A {
convenience init() {
super.init()
...
}
}
Run Code Online (Sandbox Code Playgroud)
编译器不允许这样,必须调用超类'...'错误的指定初始值设定项super.init()
mat*_*att 11
您需要指定初始化程序,而不是convenience:
class A : UIViewController {
init() {
super.init(nibName:nil, bundle:nil)
}
required init?(coder aDecoder: NSCoder) {
fatalError("")
}
}
class B : A {
override init() {
super.init()
}
required init?(coder aDecoder: NSCoder) {
fatalError("")
}
}
Run Code Online (Sandbox Code Playgroud)
这为您提供了您正在寻找的继承结构.
| 归档时间: |
|
| 查看次数: |
10014 次 |
| 最近记录: |