2013-07-06 31 views
0

我使用ALAssetsLibrary枚举照片库中的资产,但存在一个问题。如果我在块内(用于枚举),我可以毫无问题地访问缩略图。但是,如果我将ALAsset存储在一个集合中,并尝试在稍后的某个时间访问其缩略图图像的0x00000000。ALAsset - 稍后访问缩略图

这是为什么?以后有更好的方式访问个人图像吗?

我的代码是这样的:

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]; 

} 
+0

显示您的代码。特别是您如何存储资产以及如何管理资产库。 – Wain

回答

0

我发现作为(所有上旬)ALAssetsLibrary释放的问题。只要我需要缩略图和其他任何东西,只要保留其参考,我就不应该放弃它。