0

写真ライブラリからアセットを列挙するために使用ALAssetsLibraryしますが、1 つの問題があります。ブロック (列挙用のブロック) 内にいる場合、問題なくサムネイル画像にアクセスできます。ただし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];

}
4

1 に答える 1