【发布时间】:2015-12-29 13:44:52
【问题描述】:
我正在使用 PHPhotoLibrary 访问相机胶卷照片。但它正在获取所有图像,例如下载的图像、屏幕截图、Facebook 图像等。我需要相机点击的图像。
【问题讨论】:
标签: ios objective-c iphone ios8
我正在使用 PHPhotoLibrary 访问相机胶卷照片。但它正在获取所有图像,例如下载的图像、屏幕截图、Facebook 图像等。我需要相机点击的图像。
【问题讨论】:
标签: ios objective-c iphone ios8
我相信这个链接可以帮助你:
How to get only images in the camera roll using Photos Framework
通过一些实验,我们发现了一个隐藏属性 在文档 (assetSource) 中列出。基本上你必须做一个 常规获取请求,然后使用谓词从 相机胶卷。这个值应该是 3。
示例代码:
//fetch all assets, then sub fetch only the range we need
var assets = PHAsset.fetchAssetsWithMediaType(PHAssetMediaType.Image, options: fetchOptions)
assets.enumerateObjectsUsingBlock { (obj, idx, bool) -> Void in
results.addObject(obj)
}
var cameraRollAssets = results.filteredArrayUsingPredicate(NSPredicate(format: "assetSource == %@", argumentArray: [3]))
results = NSMutableArray(array: cameraRollAssets)
【讨论】: