ALAssetsLibrary类可以实现查看相册列表,增加相册,保存图片到相册等功能。
例如enumerateGroupsWithTypes
ALAssetsGroup就是相册的类,可以通过valueForPRoperty方法查看不同属性的值,如:ALAssetsGroupPropertyNam
ALAssetsGroup类有几个方法,posterImage方法就是相册的封面图片,numberOfAssets方法获取该相册的图片视频数量,可以通过enumerateAssetsUsingBloc
ALAssetsGroup 可以使用setAssetsFilter:(ALAssetsFilter *)filter过滤照片或者视频等。
首先是获取所有相册,通过ALAssetsLibrary的实例方法得到ALAssetsGroup类数组。
?123456789101112131415 | ALAssetsLibrary NSMutableArray assetsLibrary groupArray=[[NSMutableArray [assetsLibrary BOOL *stop) if (group) [groupArray // //例如 NSLog(@ "%@" ,group); } } NSLog(@ "Group ); }]; |
ALAsset类也可以通过valueForProperty方法查看不同属性的值,如:ALAssetPropertyType,asset的类型,有三种ALAssetTypePhoto, ALAssetTypeVideo or ALAssetTypeUnknown。
另外还可以通过该方法获取ALAssetPropertyLocation(照片位置),ALAssetPropertyDuration(视频时间),ALAssetPropertyDate(照片拍摄日期)等。
可以通过thumbnail方法就是获取该照片。
根据相册获取该相册下所有图片,通过ALAssetsGroup的实例方法得到ALAsset类数组。
12345678 | [_group BOOL *stop) if (result) [imageArray NSLog(@ "%@" ,result); iv.image=[UIImage NSString } }]; |
ALAssetRepresentation类
ALAsset类有一个defaultRepresentation方法,返回值是ALAssetRepresentation类,该类的作用就是获取该资源图片的详细资源信息。
如
12345678910111213141516171819202122232425 | // //获取资源图片的详细资源信息 ALAssetRepresentation* //获取资源图片的长宽 CGSize //获取资源图片的高清图 [representation //获取资源图片的全屏图 [representation //获取资源图片的名字 NSString* NSLog(@ "filename:%@" ,filename); //缩放倍数 [representation //图片资源容量大小 [representation //图片资源原数据 [representation //旋转方向 [representation //资源图片url地址,该地址和ALAsset通过ALAssetPropertyAssetURL获取的url地址是一样的 NSURL* NSLog(@ "url:%@" ,url); //资源图片uti,唯一标示符 NSLog(@ "uti:%@" ,[representation |
新闻热点
疑难解答