【发布时间】:2014-12-07 03:05:20
【问题描述】:
我用的是XLForm,它有一个类XLFormDescriptor,需要用init(title: String)初始化。
我要使用的标题是我当前类的名称函数的返回值(类级属性还不是一个特性)。
将其放在类级别,设置它的代码如下所示:
let settingsForm = XLFormDescriptor(title: self.name())
但这给出了错误:
'PanelController -> () -> PanelController!'没有会员 命名为“名称”
把它放在类的 init 调用的顶部看起来像这样:
let settingsForm: XLFormDescriptor
override init() {
self.settingsForm = XLFormDescriptor(title: self.dynamicType.name())
super.init()
}
这样做会出现此错误:
'self' 在 super.init 调用之前使用
将它放在 super.init() 之后会出现此错误:
在 super.init 调用时未初始化属性“settingsForm”
任何想法我怎么可能做到这一点?
编辑:解决方法是这样做:
let settingsForm = XLFormDescriptor(title: "")
override init() {
super.init()
self.settingsForm = XLFormDescriptor(title: self.dynamicType.name())
}
【问题讨论】:
标签: ios xcode swift initialization