我最近开始使用Parse.com和swift,我正在尝试创建一个简单的应用程序将数据加载到表中。在使用PFQueryTableViewController类时,我发现必须使用以下代码:
override init!(style: UITableViewStyle, className: String!) {
super.init(style: style, className: className)
}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
self.parseClassName = "MyClass"
self.pullToRefreshEnabled = true
self.paginationEnabled = true
self.objectsPerPage = 50
}
我的问题是为什么必须两次调用此类的初始化?这些初始化完成了什么?
代码来自这个问题: PFQueryTableViewController in Swift using Cloud Code function
答案 0 :(得分:1)
初始化不会被调用两次;通过定义两个初始化程序,您可以定义两种不同的方法来初始化对象。就像NSNumber
:
init(float: Float)
init(double: Double)
init(bool: Bool)
初始化NSNumber
实例时,您只使用其中一个。
init?(coder: NSCoder)
的要求是一个不同的主题,在以下问题中讨论: