【发布时间】:2018-07-07 22:47:09
【问题描述】:
我可以使用以下函数成功检索视频:
func getVideoAssets() {
let options = PHFetchOptions()
options.sortDescriptors = [ NSSortDescriptor(key: "creationDate", ascending: false) ]
options.predicate = NSPredicate(format: "mediaType = %d", PHAssetMediaType.video.rawValue)
videos = PHAsset.fetchAssets(with: options)
print(videos)
prepareCollectionView()
}
但是,我只想获取横向视频,因为我的应用仅支持横向视频。 我尝试了以下方法:
options.predicate = NSPredicate(format: "(mediaType = %d) AND (pixelWidth > pixelHeight)", PHAssetMediaType.video.rawValue)
但我遇到以下崩溃:
'NSInvalidArgumentException',原因:'获取选项中不支持的谓词:pixelWidth > pixelHeight'
看来我无法使用该方法进行过滤。还有其他方法可以做到这一点吗?似乎 NSPredicate 只接受参数,而不是在 PHAsset 中的两个值之间进行比较。
如何使用 PHFetchOptions 仅检索横向视频?
【问题讨论】:
-
您始终可以根据检查方向将
videos过滤到一个新数组中。 -
@rmaddy 是的,这就是我最终要做的事情
标签: ios swift photosframework