我的代码可以在OS4.3上运行,但是在使用5的时候,我收到了关于ALAssetsGroup的ALAssetsGroup的警告,我没有得到它的任何方法,所以我得到了枚举的实例未找到(请参阅代码
void (^assetEnumerator)(ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop)
{
if(result != nil)
{
[assets addObject:result];
}
};
// Create instance of the Assets Library.
void (^assetGroupEnumerator)( ALAssetsGroup *, BOOL *) = ^(ALAssetsGroup *group, BOOL *stop) {
if(group != nil)
{
[group enumerateAssetsUsingBlock:assetEnumerator];
}
};
assets = [[NSMutableArray alloc] init];
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library enumerateGroupsWithTypes:ALAssetsGroupAlbum
usingBlock:assetGroupEnumerator
failureBlock: ^(NSError *error) {
NSLog(@"failureBlock:%@",error);
}]; 任何帮助我都将不胜感激
发布于 2011-11-06 05:49:51
在iOS 5中,更多的Assets-Library方法是异步的,并且希望从主线程调用。确保调用第二个块,在主队列上使用dispatch_async从主线程枚举组。
干杯,
亨德里克
https://stackoverflow.com/questions/7883127
复制相似问题