将images子目录中的图像加载到UICollectionViewCell中

时间:2013-03-24 19:21:29

标签: ios objective-c collectionview

我在“/ Documents / saved /”目录中有几个png格式的图像。 我把这个目录加载到一个名为“contents”的数组中 当我使用NSLog查看此数组的内容时,我会看到图像以及.DS_STORE文件 我想要做的是将所有这些图像加载到UICollectionView单元格中。

我试过了,

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

collectionImageView连接到UICollectionViewCell

中的UIImageView

但它似乎没有用.EDIT

    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。) 我需要在集合视图单元格中逐个显示这些图像。

2 个答案:

答案 0 :(得分: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数组包含NSURL而不是NSStrings。通过这种方式你可以找到答案。

答案 1 :(得分:-1)

in ur cellForRowAtIndexPath
cell.collectionImage.image=[contents objectAtIndex:indexPath.row];
return cell;