我想移动包含在单元格上的imageView,但它可以工作,但在新位置创建一个新图像,保留旧图像(然后显示两个)。我怎么能删除旧的?使用过的代码:
UIImage *cellImage = [UIImage imageNamed:(@"%@", showIconName)];
UIImageView *imageViewToPutInCell = [[UIImageView alloc] initWithImage:cellImage];
imageViewToPutInCell.frame = CGRectMake(iconPos, 7, cellImage.size.width, cellImage.size.height);
[cell.contentView addSubview:imageViewToPutInCell];
每次重新加载tableView时,它都会创建一个新的重叠图像。
[cell.contentView removeFromSuperview];使用之前,删除它,但不创建新图像。
答案 0 :(得分:2)
有几种方法可以做到这一点。如果没有子类化,您可以在imageViewToPutInCell上设置标记,然后使用 - [UIView viewWithTag:]查找并删除视图:
int imageViewTag = 1234;
[[cell.contentView viewWithTag: imageViewTag] removeFromSuperview];
imageViewToPutInCell.tag = imageViewTag;
...