美文网首页
PHotos框架详解

PHotos框架详解

作者: AmazingMasterYi | 来源:发表于2017-07-03 12:41 被阅读0次

    PHotos框架详解

    • 判断状态
        PHAuthorizationStatusNotDetermined = 0, // 用户还没做出选择
        PHAuthorizationStatusRestricted,        // 用户拒绝当前应用访问相册
        PHAuthorizationStatusDenied,            // 用户允许
        PHAuthorizationStatusAuthorized         // 家长控制
    
    • PHAsset : 一个资源, 比如一张图片\一段视频
      PHAssetCollection : 一个相簿
    • PHAssetCollection的标识, 利用这个标识可以找到对应的PHAssetCollection对象(相簿对象)

    __block NSString *assetCollectionLocalIdentifier = nil;

    PHAsset的标识, 利用这个标识可以找到对应的PHAsset对象(图片对象)
    ```__block NSString *assetLocalIdentifier = nil;```
    
     如果想对"相册"进行修改(增删改), 那么修改代码必须放在[PHPhotoLibrary sharedPhotoLibrary]的performChanges方法的block中   
    
    • 使用技巧

      • 保存照片到相机胶卷中,创建图片请求 PHAssetCreationRequest

      • 创建相簿

      • 获得创建相簿

        • fetchAssetCollectionsWithType 抓取所有相簿,返回相簿集合,然后通过for循环找到相应相簿
        for (PHAssetCollection *assetCollection in assetCollections) {
           if ([assetCollection.localizedTitle isEqualToString:MYAssetCollectionTitle]) {
               return assetCollection;
           }
        

      }

      -  获得照片 (通过标识获得图片)
      

      PHAsset *asset = [PHAsset fetchAssetsWithLocalIdentifiers:@[assetLocalIdentifier] options:nil].lastObject;

      -  添加相机胶卷的照片到相簿请求
      

      PHAssetCollectionChangeRequest *request = [PHAssetCollectionChangeRequest changeRequestForAssetCollection:assetCollection];

      -  添加图片到相簿
          
      

      [request addAssets:@[asset]];

    相关文章

      网友评论

          本文标题:PHotos框架详解

          本文链接:https://www.haomeiwen.com/subject/kmbacxtx.html