iOS 自定义多张图片选择+demo

AssetsLibrary和PhotoKit框架都可以用来封装相册的单选与多选功能,不过ALAssetLibrary的方法在iOS 9中不被推荐了,现在都是用新的框架PhotoKit

的来实现。发现好多之前的应用自定义的XXImagePickerController都无法获取到所有的照片了,为了能让老程序也可以实现这时候就要使用 AssetsLibrary+Photos来解决问题了。

正因为苹果已经做了大量的封装工作,使得开发者在使用PhotoKit的时候非常方便

先简单介绍下ALAssetsLibrary:

ALAssetsLibrary 提供了访问iOS设备下照片应用下所有照片和视频的接口.从 ALAssetsLibrary 中可读取所有的相册数据,即 ALAssetsGroup 对象列 表;  从每个 ALAssetsGroup 中可获取到其中包含的照片或视频列表,即 ALAsset 对象列表. 其层次关系为  

ALAssetsLibrary -> ALAssetsGroup -> ALAsset -> ALAssetRepresentation. 

       1、 每个 ALAsset 可能有多个representations表示, 即ALAssetRepresentation 对象;
       
       2、使用其defaultRepresentation 方法可获得其默认representations;

       3、使用[asset valueForProperty: ALAssetPropertyRepresentations ]可获取其所有representations的 UTI 数组;

       4、从ALAsset对象可获取缩略图 thumbnail 或 aspectRatioThumbnail ; 

再简单介绍一下photoKit的框架。photoKit的基本构成有:

     1、PHAsset: 代表照片库中的一个资源,跟 ALAsset 类似,通过 PHAsset 可以获取和保存资源

     2、PHFetchOptions: 获取资源时的参数,可以传 nil,即使用系统默认值

     3、PHAssetCollection: PHCollection 的子类,表示一个相册或者一个时刻,或者是一个「智能相册(系统提供的特定的一系列相册,例如:最近删

除,视频列表,收藏等等,如下图所示)

     4、PHFetchResult: 表示一系列的资源结果集合,也可以是相册的集合,从 PHCollection 的类方法中获得
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值