我ALAssetsLibrary
用来枚举照片库中的资产,但有一个问题。如果我在块内(用于枚举的块),我可以毫无问题地访问缩略图。但是,如果我将其存储ALAsset
在一个集合中并尝试在稍后的某个时间访问缩略图图像,它的 0x00000000。
为什么这个?以后有没有更好的方法来访问单个图像?
我的代码是这样工作的:
assets = [[NSMutableArray alloc] init];
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library enumerateGroupsWithTypes:ALAssetsGroupAll
usingBlock:assetGroupEnumerator
failureBlock:^(NSError *error) {NSLog(@"bla bla bla ... problem");}];
和
void (^assetGroupEnumerator) (ALAssetsGroup *, BOOL *) = ^(ALAssetsGroup *group, BOOL *stop)
{
if(group != nil)
{
// extract every asset from goup
[group enumerateAssetsUsingBlock:assetEnumerator];
}
};
和
void (^assetEnumerator) (ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop) {
[assets addObject:result];
}