0

只是在使用 UIButton 时遇到了一些困难。我使用删除所有子视图

for (UIView *v in button.subviews) {
    [v removeFromSuperview];
}

但我想在之后使用设置背景图像

[button setBackgroundImage:[UIImage imageNamed:@"backgroundImage.png"] forState:UIControlStateNormal];

什么也没有发生。如果我不删除所有子视图,那么前面的代码就可以工作。

那么是否有可能删除所有子视图实际上也会删除背景图像,在这种情况下,是否可以将背景图像放回原处?

4

1 回答 1

0

是的,根据您的经验,背景图像似乎使用单独的子视图显示。简短的回答:而不是强奸糟糕的视图层次结构(无论如何都是私有的),你应该跟踪你自己添加的子视图并只删除那些。

于 2013-04-20T16:08:15.953 回答