错误1.Method does not override any method from its superclass
这个错误是在重写supportedInterfaceOrientations()方法是遇到的,发现在4.0之后没有这个方法,要实现相同的是supportedInterfaceOrientations属性,所以会报错这个方法不能从它的父类重写。
关于变成属性的解决办法是我们需要重写supportedInterfaceOrientations属性的get方法控制设备的方向
override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
get { return .portrait }
set {
self.supportedInterfaceOrientations = newValue
}
}
错误2.Reference to property 'statusList' in closure requires explicit 'self.' to make capture semantics explicit
这个是在写闭包的时候遇到的,就是在闭包内引用成员变量要加self.
错误3.Declarations in extensions cannot override yet
在分类中的声明不能被重写
解决办法需要在父类的方法中加入 @objc 表示用OC的方式来访问方法
这里有一个小注意点,写在extension中的方法,在子类中重写时也要在extension中重写
错误4.Initializer 'init()' with Objective-C selector 'init' conflicts with previous declaration with the same
原因:初始化器与objective - c“init()”选择“init”冲突与先前的声明相同的
Objective-C selector 函数名可以一样,但是参数名不能一样,表示实现的是不同的功能,
错误5.Self.init isn't called on all paths before returning from initializer
需要调用self.init 进行初始化
网友评论