使用ELCImagePickerController选择视频

时间:2012-03-29 19:04:52

标签: ios

我正在尝试从照片库中选择ELCImagePickerController的视频,但是当我打印这个

NSLog(@"%@",[dict valueForKey:@"UIImagePickerControllerMediaType"]);

它返回ALAssetTypeVideo,而不是 public.movi​​e 类型,

我不知道有没有办法从ALAssetTypeVideo中选择一部电影(如.mov)?

抱歉,我的英语不是很好:')

2 个答案:

答案 0 :(得分:6)

ALAssetsGroup过滤器更改为allAssets文件中的ELCAlbumPickerController.m

这里:

 ALAssetsGroup *g = (ALAssetsGroup*)[assetGroups objectAtIndex:indexPath.row];
    [g setAssetsFilter:[ALAssetsFilter allPhotos]];

在这里:

[picker.assetGroup setAssetsFilter:[ALAssetsFilter allPhotos]];

答案 1 :(得分:3)

我们需要在ALAssetsFilter中用“allAssets”替换“allPhotos”     两个地方在ELCImagePickerController代码中显示所有资产(包括视频)     如下所示

首先改变:

ALAssetsGroup *g = (ALAssetsGroup*)[assetGroups objectAtIndex:indexPath.row]; 
[g setAssetsFilter:[ALAssetsFilter **allAssets**]];

第二名:

在tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath方法

[picker.assetGroup setAssetsFilter:[ALAssetsFilter **allAssets**]];

但是视频资产缩略图与图片缩略图相同,要更改它在ELCAsset.m类构造函数initWithAsset:(ALAsset*)_asset中编写自定义代码

例如:

检查

if ([self.asset valueForProperty:ALAssetPropertyType] == ALAssetTypeVideo ){
                 // code for video thumbnail 
      }

if ([self.asset valueForProperty:ALAssetPropertyType] == ALAssetTypePhoto ){
             // code for Photo thumbnail 
    }