Photos(PHImageManager)

PHImageManager是PHAsset管理器,它能从PHAsset获取你想要的数据,如UIImage、NSData等。

1 获取PHImageManager

/// 获取单例PHImageManager
///
/// - returns: PHImageManager
public class func defaultManager() -> PHImageManager

2 获取照片

/// 获取UIImage
///
/// - parameter asset : PHAsset
/// - parameter targetSize : CGSize图片尺寸
/// - parameter contentMode : PHImageContentMode图片模式
/// - parameter options : PHImageRequestOptions加载方式
/// - parameter resultHandler : (UIImage?, [NSObject : AnyObject]?) -> Void 闭包回调返回数据
///
/// - returns: PHImageRequestID加载标示符
public func requestImageForAsset(asset: PHAsset, targetSize: CGSize, contentMode: PHImageContentMode, options: PHImageRequestOptions?, resultHandler: (UIImage?, [NSObject : AnyObject]?) -> Void) -> PHImageRequestID

/// 获取NSData
///
/// - parameter asset : PHAsset
/// - parameter contentMode : PHImageContentMode加载方式
/// - parameter resultHandler : (NSData?, String?, UIImageOrientation, [NSObject : AnyObject]?) -> Void 闭包回调返回数据
///
/// - returns: PHImageRequestID
public func requestImageDataForAsset(asset: PHAsset, options: PHImageRequestOptions?, resultHandler: (NSData?, String?, UIImageOrientation, [NSObject : AnyObject]?) -> Void) -> PHImageRequestID

3 获取视频

/// 获取视频AVPlayerItem
///
/// - parameter asset : PHAsset
/// - parameter options : PHVideoRequestOptions加载方式
/// - parameter resultHandler : (AVPlayerItem?, [NSObject : AnyObject]?) -> Void 闭包返回数据
///
/// - returns: PHImageRequestID加载标示符
public func requestPlayerItemForVideo(asset: PHAsset, options: PHVideoRequestOptions?, resultHandler: (AVPlayerItem?, [NSObject : AnyObject]?) -> Void) -> PHImageRequestID

/// 获取视频AVPlayerItem
///
/// - parameter asset : PHAsset
/// - parameter options : PHVideoRequestOptions加载方式
/// - parameter exportPreset : 名称
/// - parameter resultHandler : (AVAssetExportSession?, [NSObject : AnyObject]?) -> Void 闭包返回数据
///
/// - returns: PHImageRequestID加载标示符
public func requestExportSessionForVideo(asset: PHAsset, options: PHVideoRequestOptions?, exportPreset: String, resultHandler: (AVAssetExportSession?, [NSObject : AnyObject]?) -> Void) -> PHImageRequestID

/// 获取AVAsset
///
/// - parameter asset : PHAsset
/// - parameter options : PHVideoRequestOptions加载方式
/// - parameter resultHandler : (AVAsset?, AVAudioMix?, [NSObject : AnyObject]?) -> Void 闭包返回数据
///
/// - returns: PHImageRequestID加载标示符
public func requestAVAssetForVideo(asset: PHAsset, options: PHVideoRequestOptions?, resultHandler: (AVAsset?, AVAudioMix?, [NSObject : AnyObject]?) -> Void) -> PHImageRequestID

4 获取生活照片

/// 获取生活照片
///
/// - parameter asset : PHAsset
/// - parameter targetSize : CGSize 目标大小
/// - parameter contentMode : PHImageContentMode 显示模式
/// - parameter options : PHLivePhotoRequestOptions 加载设置
/// - parameter resultHandler: (PHLivePhoto?, [NSObject : AnyObject]?) -> Void 闭包返回数据
///
/// - returns: PHImageRequestID
@available(iOS 9.1, *)
public func requestLivePhotoForAsset(asset: PHAsset, targetSize: CGSize, contentMode: PHImageContentMode, options: PHLivePhotoRequestOptions?, resultHandler: (PHLivePhoto?, [NSObject : AnyObject]?) -> Void) -> PHImageRequestID

5 取消加载

/// 取消获取数据
///
/// - parameter requestID : PHImageRequestID 加载标示符
///
/// - returns: void
public func cancelImageRequest(requestID: PHImageRequestID)

 


其他

源代码

Swift

参考资料

Photos Framework Reference

PHImageManager Class Reference

文档修改记录

时间描述
2016-01-05博文完成

版权所有

CSDN:http://blog.csdn.net/y550918116j

GitHub:https://github.com/937447974/Blog

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值