Rya*_*yan 0 objective-c init ios swift
我正在尝试实现Objective-C equiv.下面用nib调用视图控制器时.
目标C:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.modalPresentationStyle = UIModalPresentationCustom;
self.transitioningDelegate = self;
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
这是我到目前为止迅速的地方:
override init(nibName nibNameOrNil: String!, bundle nibBundleOrNil: NSBundle!) {
super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
self.modalPresentationStyle = UIModalPresentationStyle.Custom
self.transitioningDelegate = self
}
Run Code Online (Sandbox Code Playgroud)
但是我一直收到这个错误:
Class "ViewController" does not implement its superclass's required members
Run Code Online (Sandbox Code Playgroud)
我以为上面的init方法是否需要成员?
编辑 - 进入下面的更多细节: 类不实现其超类的必需成员
您必须实现基类所需的初始化程序.在您的情况下,您应该在VC类下面添加代码:
required init(coder aDecoder: NSCoder!) {
super.init(coder: aDecoder)
}
Run Code Online (Sandbox Code Playgroud)
从Beta 5开始:
在所需初始值设定项的每个子类实现之前写入所需的修饰符.自动继承的初始值设定项可以满足所需的初始值设定项.
备注:
required init(coder aDecoder: NSCoder!) { ... }只有init在您的类中至少覆盖一个方法时才应添加.
| 归档时间: |
|
| 查看次数: |
5963 次 |
| 最近记录: |