我很难弄清楚如何正确排序我的Message结构。下面是我使用的功能,这是不起作用的。每当我尝试构建时,我得到一个“传递给不带参数的调用的参数”错误。
@objc func handleReloadTable() {
self.messages = Array(self.messagesDictionary.values)
self.messages.sort(by: { (message1, message2) -> Bool in
return message1.timestamp?.int32Value > message2.timestamp?.int32Value
})
DispatchQueue.main.async(execute: {
self.tableView.reloadData()
})
}
有点令人沮丧,因为我在多个项目中使用了相同的功能,我从来没有遇到过问题。但是,这些项目是用Swift 3.0编写的,这个项目是在Swift 4中。
请尝试使用“排序”方法的格式:
self.messages.sort { (message1, message2) -> Bool in
return message1.timestamp?.int32Value > message2.timestamp?.int32Value
}
在快速的4和5中尝试