0

我正在尝试使用 NSSortDescriptor 按日期对名为 Log 的实体的 NSOrderedSet 进行排序,该实体具有 3 个属性(logDate、logDescription、logThumbnail),但它不起作用。

if let logs = projectSelected?.logs {
        let sd = NSSortDescriptor(key: "logDate", ascending: false)
        logs.sortedArrayUsingDescriptors([sd])
}

我也尝试使用 projectLogs?.sortInPlace{$0.logDate!.compare($1.logDate!) == .OrderedAscending} 没有成功。对于我正在尝试做的事情,最好的解决方案是什么?预先感谢您的帮助。

4

1 回答 1

2

NSOrderedSet要对就地排序,它必须是可变的 ( NSMutableOrderedSet)

let mutableLogs = logs.mutableCopy()
let sd = NSSortDescriptor(key: "logDate", ascending: false)
mutableLogs.sortUsingDescriptors([sd])
于 2016-06-22T10:53:48.270 回答