属性'self。*'未在super.init调用中初始化 [英] Property 'self.*' not initialized at super.init call
本文介绍了属性'self。*'未在super.init调用中初始化的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我刚刚将我的xcode更新为6.3.1。问题是我从swift 1.2获得了这个奇怪的错误消息。我收到了这种错误消息
I just updated my xcode to 6.3.1. The problem is I got this weird error message since swift 1.2. I got this kind of error message
/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
请咨询。谢谢。
推荐答案
你必须在调用 super.init $ c之前初始化所有属性$ c>在任何初始化方法中
You have to initialize all property before you call super.init
in any init method
因此,在调用super.init()之前更改此信息
So,change this before you call super.init()
originView = sourceView //error here
异常:
- 可选属性
- 属性,默认值
- lazy property
这篇关于属性'self。*'未在super.init调用中初始化的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文