我创建了一个自定义类来保存图像及其字符串(名称)
class Countries: NSObject {
var countryName : String
var countryFlag : UIImage
init(countryName: String, countryFlag: UIImage) {
self.countryName = countryName
self.countryFlag = countryFlag
super.init()
}
}
我宣布上课
var myList: Array<Countries> = []
并将每个国家/地区信息添加到数组中
let image = UIImage(data:imageData!)
let dd = Countries(countryName: object["CountryName"] as! String, countryFlag: image!)
self.myList.append(dd)
我试过下面的代码对数组进行排序,但是不起作用;
self.myList.sortInPlace({ $0.countryName < $1.countryName })
有人知道如何根据上述代码对数组进行排序吗?
最佳答案
您可以使用-sortUsingComparator:
对这样的数组进行排序,并将其传递给块。该块接受您要比较的两个对象,并返回NSComparisonResult
,这是您对这两个对象的比较。您可以提供使用countryName
的块。
您也可以使用-sortUsingDescriptors:
并传入查看NSSortDescriptor
字段的countryName
。