我正在使用Photos框架在iOS8中获取相册列表,
如何重新排序smartAlbums,所以我可以显示'最近添加'的顶部所有
let smartAlbums : PHFetchResult = PHAssetCollection.fetchAssetCollectionsWithType(PHAssetCollectionType.SmartAlbum, subtype: PHAssetCollectionSubtype.AlbumRegular, options: nil)
在cellForRow方法中
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let collection = smartAlbums[indexPath.row]
cell.textLabel?.text = collection.localizedTitle
return cell
}
let photofetchOpt:PHFetchOptions? = PHFetchOptions()
photofetchOpt?.sortDescriptors = [NSSortDescriptor(key:"localizedTitle", ascending: false)]
我曾尝试在获取资产集合时使用PHFetchOptions,但对智能相册的顺序没有影响。
2条答案
按热度按时间nwo49xxi1#
PHAssetCollection
类具有属性名称startDate
,该属性名称指示资产集合中所有资产中最早的创建日期。Link。使用
PHFetchOptions
中的sortDescriptor
获取相册购买最新图像顺序。目标语言-C
迅捷
vojdkbi02#
我得到了一个重新排序PHCollectionList的解决方案,我张贴这个答案,为谁正在努力重新排序列表基本上我使用的是
NSMutableArray sortedSmartAlbumsCollectionsFetchResults
如上面代码所示,我已经从smartAlbums中提取了每个PHAssetCollection,并检查它的子类型是否为
SmartAlbumRecentlyAdded
,如果是,则将其插入到0索引处,否则继续添加NSMutableArray
查看结果