我正在尝试从照片库中选择ELCImagePickerController
的视频,但是当我打印这个
NSLog(@"%@",[dict valueForKey:@"UIImagePickerControllerMediaType"]);
它返回ALAssetTypeVideo
,而不是 public.movie 类型,
我不知道有没有办法从ALAssetTypeVideo
中选择一部电影(如.mov)?
答案 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
}