0

将背景(图像)添加到我的 UIView(View_0)后,我希望实现一个按钮来删除相同的背景。

我该怎么做?我试图将不同的图像设置为 View_0 的背景,但这不起作用(我怀疑这个背景设置在“图像”后面)。

我不想用

[View_0 removeFromSuperview];

因为我需要 View_0 仍然存在用于其他目的....

//Create an ImageView
UIImageView *image = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 940, 422)];;           

//Add the ImageView as the background of the View_0
[View_0 addSubview:image];
//Move custom image behind View
[View_0 sendSubviewToBack: image];

//Failed attempt to remove the background....
View_0.backgroundColor = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"defaultImage.PNG"]];    
4

2 回答 2

1
  //Create an ImageView
        UIImageView *image = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 940, 422)];;  
        image.tag = 1234;         

        //Add the ImageView as the background of the View_0
        [View_0 addSubview:image];
        //Move custom image behind View
        [View_0 sendSubviewToBack: image];

        UIImageView *imgView = [self.view viewWithTag:1234];
        [img setImage:nil];

我认为这应该可行

于 2012-07-26T10:19:43.180 回答
1

您已将 UIImageView 添加到视图而不是视图的背景。所以发生的事情是,当你实施

View_0.backgroundColor = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"defaultImage.PNG"]];

正在设置 View 的背景,但 UIImageView 现在位于 View 的顶部,这就是没有显示 View 的背景的原因。

相反,如果您只是想添加背景,您可以将其更改为 UIButton 的操作。

此外,如果您使用[View_0 removeFromSuperview];您正在尝试删除不正确的视图。

于 2012-07-26T10:22:11.490 回答