如果每个数字都等于UICollectionView
indexPath 单元格的图像> {<1}}的行。
我知道我可以使用:
collectionView
表示单个值,但如何从数组中执行此操作?
顺便说一句。它是一个动态if [indexPath row] == 5 {
self.myImage = [UIImage imageNamed:@"120-red.png"];
aCell.imageView.image = self.myImage;
}
,由购买的产品创建并存储在NSMutableArray
中。非常感谢任何帮助!
答案 0 :(得分:2)
您可以将索引和图像名称保存在字典中,其键为NSNumbers。
NSDictionary* dict = @{@(5):@"120-red.png", @(6):@"130-blue.png"};
然后在你的dataSource方法
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView
cellForItemAtIndexPath:(NSIndexPath *)indexPath {
NSString* str = [dict objectForKey:@(indexPath.row)];
if (str) { //str will be nil if the key isn't in the dictionary
image = [UIImage imageNamed: str];
}
else {
//the key wasn't in your dictionary. Do whatever you did before to keep this cell the same
}
}
更改数据时需要重新加载。使用:
- (void)reloadItemsAtIndexPaths:(NSArray *)indexPaths
仅重新加载您更改的内容,
OR
- (void)reloadData
重新加载整个集合