1

「/Documents/saved/」ディレクトリにpng形式の画像がいくつかあります。このディレクトリを「contents」という配列にロードしました。NSLogを使用してこの配列のコンテンツを表示すると、画像と.DS_STOREファイルが表示されます。これらすべての画像をUICollectionViewセルにロードします。

私はこれを試しました、

[[cell collectionImageView] setImage:
        [UIImage imageWithContentsOfFile:
              [contents objectAtIndex:indexPath.item]]];

collectionImageViewは、UICollectionViewCellのUIImageViewに接続されています

しかし、それは機能していないようです。編集

    NSString *dataPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/DImage"];
NSArray *contents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:dataPath error:NULL];

NSLog(@ "%@"、コンテンツ);

これは私に出力を与えます

2013-03-25 10:37:20.186 aUX[543:c07] (
".DS_Store",
"savedImage_0.png",
"savedImage_1.png",
"savedImage_2.png",
"savedImage_3.png",
"savedImage_4.png",
"savedImage_5.png"
)

(collectionImageViewという名前のUIImageViewをドラッグしました。)これらの画像をコレクションビューのセルに1つずつ表示する必要があります。

4

2 に答える 2

0

使用しているデータ型が明確ではありません。たぶん、ワンライナーを分割すると、状況がより明確になる可能性があります。また、このようにして、NSLogまたはデバッガーで各ステップを確認できます。

NSString *fileName = [contents objectAtIndex:indexPath.item]; 
NSString *path = [filesDirectory stringByAppendingPathComponent:fileName];
UIImage *image = [UIImage imageWithContentsOfFile:path];
UIImageView *cellImageView =  cell.collectionImageView;
cellImageView.image = image; 

contents配列にNSStringではなくNSURLが含まれている可能性があります。このようにして、あなたは見つけることができます。

于 2013-03-24T20:44:36.583 に答える
-1
in ur cellForRowAtIndexPath
cell.collectionImage.image=[contents objectAtIndex:indexPath.row];
return cell;
于 2014-08-13T11:41:10.663 に答える