我刚刚将我的 xcode 更新到 6.3.1。问题是我从 Swift 1.2 开始收到这个奇怪的错误消息。我收到了这种错误信息
/Users/MNurdin/Documents/iOS/xxxxx/Library/SideBar.swift:32:15: Property 'self.originView' not initialized at super.init call
/Users/MNurdin/Documents/iOS/xxxxx/Library/SideBar.swift:38:20: Immutable value 'self.originView' may only be initialized once
关于这段代码
let originView:UIView?
override init() {
super.init() //error here
}
init(sourceView:UIView, menuItems:Array<String>){
super.init() //error here
originView = sourceView //error here
最佳答案
在任何 init 方法中调用 super.init
之前必须初始化所有属性
所以,在调用 super.init() 之前更改它
originView = sourceView //error here
异常(exception):
- 可选属性
- 具有默认值的属性
- 惰性属性
关于ios - 属性 'self.*' 未在 super.init 调用时初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29890510/