iOS APP删除系统相册中选中的图片-姬云鹏
来源:互联网 发布:远程办公软件 编辑:程序博客网 时间:2024/04/30 00:41
app有一个新功能是在app中删除相册的照片。 8之前还是AssetsLibary处理
iOS 8+通过Photos.framework #import <Photos/Photos.h>
1.添加图片
- //首先获取相册的集合
- PHFetchResult *collectonResuts = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeSmartAlbum subtype:PHAssetCollectionSubtypeAny options:[PHFetchOptions new]] ;
- //对获取到集合进行遍历
- [collectonResuts enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
- PHAssetCollection *assetCollection = obj;
- //Camera Roll是我们写入照片的相册
- if ([assetCollection.localizedTitle isEqualToString:@"Camera Roll"]) {
- [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
- //请求创建一个Asset
- PHAssetChangeRequest *assetRequest = [PHAssetChangeRequest creationRequestForAssetFromImage:[UIImage imageNamed:@"pet"]];
- //请求编辑相册
- PHAssetCollectionChangeRequest *collectonRequest = [PHAssetCollectionChangeRequest changeRequestForAssetCollection:assetCollection];
- //为Asset创建一个占位符,放到相册编辑请求中
- PHObjectPlaceholder *placeHolder = [assetRequest placeholderForCreatedAsset ];
- //相册中添加照片
- [collectonRequest addAssets:@[placeHolder]];
- } completionHandler:^(BOOL success, NSError *error) {
- NSLog(@"Error:%@", error);
- }];
- }
- }];
2.删除最后一张图片
- PHFetchResult *collectonResuts = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeSmartAlbum subtype:PHAssetCollectionSubtypeAny options:[PHFetchOptions new]] ;
- [collectonResuts enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
- PHAssetCollection *assetCollection = obj;
- if ([assetCollection.localizedTitle isEqualToString:@"Camera Roll"]) {
- PHFetchResult *assetResult = [PHAsset fetchAssetsInAssetCollection:assetCollection options:[PHFetchOptions new]];
- [assetResult enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
- [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
- //获取相册的最后一张照片
- if (idx == [assetResult count] - 1) {
- [PHAssetChangeRequest deleteAssets:@[obj]];
- }
- } completionHandler:^(BOOL success, NSError *error) {
- NSLog(@"Error: %@", error);
- }];
- }];
- }
- }];
3.删除选中的图片
- // NSURL *url= [info objectForKey:UIImagePickerControllerReferenceURL];
- PHFetchResult *result = [PHAsset fetchAssetsWithALAssetURLs:@[url] options:nil];
- PHAsset *asset = [result lastObject];
- [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
- [PHAssetChangeRequest deleteAssets:@[asset]];
- } completionHandler:^(BOOL success, NSError *error) {
- NSLog(@"Error: %@", error);
- }];
0 0
- iOS APP删除系统相册中选中的图片-姬云鹏
- iOS APP删除系统相册中选中的图片
- [iOS]删除相册图片
- iOS中获取系统相册中的图片
- iOS中获取系统相册中的图片
- iOS中获取系统相册中的图片
- iOS获取系统相册中的图片
- 从相册中选取图片
- IOS获取系统相册图片
- iOS遍历相册中的图片
- app 获取ios相册的图片
- Android 删除手机相册中的图片
- ios从系统相册中读取图片
- iOS调用系统相册选取图片
- ios 图片保存到系统相册
- iOS处理系统相册裁剪后图片
- iOS 保存图片到 系统相册
- iOS 系统相册获取图片,保存图片,以及剪切图片
- JavaScript window.location IE谷歌跳转路径不兼容
- YARN - 比较 YARN 与 MapReduce 1
- 【WPF】使用Popup控件做浮窗/提示框
- 0. spark源码学习分享 前言
- 1295: Fengsensei的测试
- iOS APP删除系统相册中选中的图片-姬云鹏
- hpuoj-1010-QAQ的序列价值【状压】【数学组合】
- 容器+位异或 HDU 2095 find your parents(2)
- sh脚本:批量ping
- 文本数据的机器学习自动分类方法(上)
- POJ 3280 Cheapest Palindrome 已被翻译
- PAT 1063. Set Similarity (STL||集合交,并)
- React Native使用WebStorm 2016.3代码自动补全
- Android Binder相关的一些基础知识点.