我有一个UICollectionView,其中每个单元格都有一个UIImageView对象。当呈现新单元格时,必须从网络上加载图像,因此我希望在加载图像时单元格为黑色。
我已经实现了这一点,但是不是从黑色开始,单元格从随机的先前图像开始并转换到新图像。
这是我的代码:
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
GalleryCVCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:kGalleryCellIdentifier forIndexPath:indexPath];
cell.backgroundColor = [UIColor black];
cell.tag = indexPath.row;
cell.imageView.image = nil;
[Util fetchPhoto:urls[indexPath.row] completion:^(UIImage* image){
if (cell.tag == indexPath.row){
cell.imageView.image = image;
}
}];
}
为什么没有cell.imageView.image = nil
清除图像?如何让单元格每次重置为黑色视图?
答案 0 :(得分:2)
尝试在UICollectionViewCell中实现以下内容:
-(void)prepareForReuse{
[super prepareForReuse];
// Reset here back to default values.
}