在我的应用中,我有一个方法loadImage loadImage方法用于将新图像添加到imageView中。
-(void)loadimage:(int)index
{
ImageView = [[UIImageView alloc] initWithFrame:CGRectMake(self.view.frame.size.width*index, 0, self.view.frame.size.width, self.view.frame.size.height-88)]; // -88(Upper+Lower)
NSString *imageNameStr = [NSString stringWithFormat:@"%@",[arrImages objectAtIndex:index]];
ImageView.image=[UIImage imageNamed:imageNameStr];
[ScrollView addSubview:ImageView];
}
添加图像后,我想删除旧图像 removeImage方法用于从imageView中删除旧图像。
如何创建removeImages方法来删除所选图像?
答案 0 :(得分:0)
首先,您需要保留图像子视图列表。之后,您可以在滚动视图中调用要删除的removeFromSuperview
。
声明一个NSMutableArray来保存UIImageViews。
首先,在最后将它添加到你的loadImage方法:
[arrayOfUIImageViews addObject:ImageView]
然后,要删除索引0处的图像,请执行以下操作:
[[arrayOfUIImageViews objectAtIndex:0] removeFromSuperview]
[arrayOfUIImageViews removeObjectAtIndex:0]
答案 1 :(得分:0)
ImageView
相同,并将其命名为“nothing.png” NSString *nothingString = [[NSString] initWithFormat:@"nothing.png"]
ImageView.image=[UIImage imageNamed:nothingString];
最简单的方法!哈哈哈
答案 2 :(得分:0)
您可以添加唯一标记号以跟踪要删除的UIImageView
。
在loadImage:
方法中:
ImageView.tag = index + numberOffset;
numberOffset
是您知道不会使用的整数值,因此您可以避免碰撞
然后,删除图像
-(void)removeImage:(int)tagIndex
{
UIImageView *imgView = (UIImageView *)[ScrollView viewWithTag:tagIndex];
if (imgView != nil)
{
[imgView removeFromSuperview];
}
}
致电removeImage:index + numberOffset
希望有所帮助
答案 3 :(得分:0)