0

アセット ライブラリを使用する必要があります。次のようなスニペットを見つけました。

[library enumerateGroupsWithTypes:ALAssetsGroupAlbum
                        usingBlock:assetGroupEnumerator
                        failureBlock: ^(NSError *error) {
                            NSLog(@"Failure");
                        }];

コンパイラは、ブロックを認識しないなどのエラーを表示します^。

プロジェクトでブロックを有効にするための設定または何かがありますか? 前もって感謝します

ここに完全なエラー/コードがあります: https://skitch.com/ghiboz/grpyc/xcode

パオロ

4

2 に答える 2

1

私の最初の答え - プロジェクトに AssetsLibrary フレームワークを追加する必要があるようです。

私の新しい答え - アセットの列挙については、ブロック宣言で「struct」キーワードを削除してください。それらは必要ありません。

例えば

void (^assetGroupEnumerator)(ALAssetsGroup *, BOOL *) = ^(ALAssetsGroup *group, BOOL *stop){

void (^assetEnumerator)(ALAsset *, NSUInteger, BOOL *) = ^(ALAsset * result, NSUInteger index, BOOL * stop) 
于 2011-10-30T03:50:41.390 に答える
1

Clang の代わりに GCC を使用していますか? 多くの場合、ブロックの署名を認識するのに問題があります。

于 2011-10-27T00:56:50.463 に答える