ios - 获取 ALAssetGroup 中的照片和视频的计数

标签 ios cocoa-touch uikit alassetslibrary alasset

我像这样枚举我的 ALAssetGroup:

ALAssetsLibraryGroupsEnumerationResultsBlock listGroupBlock = ^(ALAssetsGroup *group, BOOL *stop) {

    if (group.isEditable){
        NSLog(@"group is %@", group);
        [group setAssetsFilter:[ALAssetsFilter allPhotos]];
        [groups addObject:group];
    }

这会将组过滤为仅包含在其 .numberOfAssets 中的照片。但是,我想要同时照片计数视频计数。如果不第二次枚举整个事情,我将如何做到这一点?

最佳答案

ALAssetsLibrary *al = [[ALAssetsLibrary alloc]init];
    [al enumerateGroupsWithTypes:ALAssetsGroupAlbum usingBlock:^(ALAssetsGroup *group, BOOL *stop)
     {
         if ([[group valueForProperty:ALAssetsGroupPropertyName]isEqualToString:@"MyAlbumName"]) {
             NSLog(@"in album");
             int nrAssets=[group numberOfAssets];

             __block int countVideo;
             __block int countPhoto;

            countPhoto=countVideo=0;
             [group enumerateAssetsUsingBlock:^(ALAsset *asset, NSUInteger index, BOOL *stop)
              {

                 if ([[asset valueForProperty:ALAssetPropertyType]isEqualToString:ALAssetTypeVideo]) {
                          NSLog(@"eVideo ... count++");
                         countVideo++;
}
                else if(asset valueForProperty:ALAssetPropertyType]isEqualToString:AlAssetTypeVideo]){
                       NSLog(@"EPhoto ... ");
                       countPhoto++;
}

       }];
         }


     }
                    failureBlock:^(NSError *error) { NSLog(@"Boom!!!");}
     ];

我将此代码用于特定专辑,但您可以针对所有专辑进行修改,希望对您有所帮助:)

关于ios - 获取 ALAssetGroup 中的照片和视频的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18872609/

相关文章:

Objective-c 选项卡式应用程序,线程 1 信号 : SIGABRT

swift - 无法使用 alpha 属性调用非函数类型 'CGFloat' 的值

ios - 身份验证成功后如何以编程方式继续?

ios - 从应用程序内发送电子邮件中的图像和文本

ios - 在 block 中调用时未发出 CLLocationManager 身份验证请求

iphone - 如何在 iPad 上运行 iPod 应用程序

ios - 在我的 iPhone 应用程序中将字符串转换为日期

iphone - 有没有第三方库可以在 iPhone OS 中进行很酷的 View 转换?

ios - 如何在此 View Controller 中显示 inputAccessoryView

php - 如何检测用户在移动设备上并提供应用程序