ALAssetsGroup setAssetsFilter用于在iOS中获取照片和视频

时间:2012-01-05 12:21:05

标签: objective-c ios cocoa ios4

我正在使用ALAssetsGroup来显示照片和视频。

ALAssetsGroup有一个名为

的方法
- (void)setAssetsFilter:(ALAssetsFilter *)filter;

使用此文件管理器,您可以过滤照片

[ALAssetsFilter allPhotos]

或视频

[ALAssetsFilter allVideos]

但我希望同时获得照片和视频。我没有找到任何方法,其中过滤后我可以添加它们。

等待你的回复

提前致谢

=================== EDIT =========================== ===========

我在文档中看到了以下资产类型: -

//资产类型

extern NSString *const ALAssetTypePhoto  // The asset is a photo

extern NSString *const ALAssetTypeVideo   // The asset is a video

extern NSString *const ALAssetTypeUnknown   // The asset's type cannot be determined.
It could be a sound file, a video or photo file that we don't know about, or something else. This is possible only for assets imported from a camera onto the device.

1 个答案:

答案 0 :(得分:2)

根据setAssetsFilter的文档:

我会用斜体字强调句子:

  

<强>讨论

     

此方法将过滤器设置为组;它不执行过滤器。   调用numberOfAssets或枚举时应用过滤器   内容。

     

如果未设置过滤器或将其设置为nil,则枚举将返回   集团中的所有资产。

     

特别注意事项

     

一次只有一个过滤器处于活动状态。 当前的任何枚举   使用之前的过滤器继续完成飞行。

对我而言,这意味着您目前无法同时制作同时包含“视频”和“照片”的过滤器。

但话又说回来,现在我想更多关于它:现有的唯一资产是视频&amp;照片,期间。

为什么不简单地枚举所有资产(通过ALAssetsFilter的allAssets)?