我有一些PFObject
子类,我将其用作模型,并且我想在循环中调用Parse的registerSubclass()
。这就是我目前所拥有的:
let subclasses: [PFObject.Type] = [
Calendar.self,
Meeting.self,
UserSetting.self,
Setting.self
]
for subclass in subclasses {
subclass.registerSubClass()
}
```
我使用Calendar.self
代替Calendar
,因为快速的建议说"使用.self
来引用类型对象"
问题是这会迭代类型,但我需要迭代静态类。
具体错误为'PFObject.Type' does not have a member named 'registerSubClass'
如何对类进行快速迭代,而不是类型?
<小时/> 我也尝试过:
let subClasses: [PFObject] = [Calendar, ...]
但这不起作用:抱怨创建Calendar
类型的实例
也尝试过:
let subClasses: [PFObject.Type] = [Calendar, ...]
但是这会给出expected member name or constructor after type call
,并建议Use '.self' to reference the type object
,这就是我使用Calendar.self
,Meeting.self
等方式达到顶级方法的方式。
答案 0 :(得分:1)
首先,您在创建Array
子类时做的一切正确,您的for-in
循环也是正确的。你的错误是一个简单的错字。当你打算写registerSubClass
时,你写了registerSubclass
。我再说一遍,这个是使用子类数组的正确方法。