【发布时间】:2015-04-11 19:29:57
【问题描述】:
升级到 Xcode 6.3 6D570(和 Swift 1.2)后,子类对象的 init 无法编译。 假设我有一个名为 Armor 的类,它继承自 PFObject、PFSubclassing(正如 Parse 文档所说)。
当我尝试创建实例时,例如var armor = Armor(),我收到以下编译错误:
调用中的参数“className”缺少参数
然后我在 Parse 文档中读到我应该使用“对象”类方法来初始化一个子类对象。所以我尝试这样初始化:var armor = Armor.object().
然后我得到以下编译错误:
'object()' 不可用:使用对象构造'PFObject()'
我正在使用 Parse SDK 版本 1.7.1。
我也重写parseClassName方法如下:
class func parseClassName() -> String {
return "Armor"
}
在设置 Parse 之前,我在初始化方法和应用委托上注册了子类:
override class func initialize() {
var onceToken : dispatch_once_t = 0;
dispatch_once(&onceToken) {
self.registerSubclass()
}
}
我应该如何正确地初始化一个子类对象?
【问题讨论】:
-
您似乎忘记包含编译错误。究竟是什么失败了?
-
我的错,添加编译错误,谢谢。
-
您是否已将 Parse SDK 更新到 1.7.1 版?
-
你重写了子类中的
parseClassName方法吗?如果是的话,你能展示一下吗? -
是的,是的(见编辑)
标签: ios swift parse-platform