2013-07-06 3 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. Я не должен отказываться от него до тех пор, пока мне нужны эскизы и все остальное, и просто сохраняйте его ссылку.

Смежные вопросы