【发布时间】:2018-06-10 21:49:16
【问题描述】:
在 Apple 的 Photos 框架中,有一个类 PHAssetCollection,它代表用户库中的专辑。
我想获取相册并按上次编辑的日期对它们进行排序(例如,照片最后添加到相册或从相册中删除的日期) - 我还没有找到一种方法来做到这一点。
有没有办法编写一个查询来返回按最近编辑排序的专辑?
【问题讨论】:
标签: ios photosframework
在 Apple 的 Photos 框架中,有一个类 PHAssetCollection,它代表用户库中的专辑。
我想获取相册并按上次编辑的日期对它们进行排序(例如,照片最后添加到相册或从相册中删除的日期) - 我还没有找到一种方法来做到这一点。
有没有办法编写一个查询来返回按最近编辑排序的专辑?
【问题讨论】:
标签: ios photosframework
有没有办法编写一个查询来返回按最近编辑排序的专辑?
没有。 PHAssetCollection 没有任何属性告诉您它的修改日期,并且 PHAsset 没有任何属性告诉您它何时添加到集合中。
【讨论】:
PHAssetCollection.endDate 的文档说:
此属性仅适用于类型为 PHAssetCollectionType.moment 的资产集合。对于其他资产集合类型,此属性的值为 nil。
但根据我的经验,这是错误的,endDate 会告诉您照片集中最近一张照片的日期。因此,如果您有专辑列表:
albums.sort { (a1, a2) -> Bool in
if let d1 = a1.endDate, let d2 = a2.endDate {
return d1 > d2
} else {
return true // aka kind of random
}
}
【讨论】: