我在想也许这样的事情可能会起作用:
for (UIView* b in self.view.subviews)
{
[b removeFromSuperview];
}
我想删除所有子视图。UIImages,按钮,文本字段等。
我在想也许这样的事情可能会起作用:
for (UIView* b in self.view.subviews)
{
[b removeFromSuperview];
}
我想删除所有子视图。UIImages,按钮,文本字段等。
b
可以立即将其从subviews
数组中删除,这会在快速枚举循环内引起突变,这是禁止的。
copy
说明符的手段,它使一个副本时设置; 没有关于获取的任何规定。很可能返回一个副本,但这不是属性定义的一部分。
Answers:
[self.view.subviews makeObjectsPerformSelector: @selector(removeFromSuperview)];
与您的变体相同,但略短。
你可以这样使用
//adding an object to the view
view.addSubView(UIButton())
// you can remove any UIControls you have added with this code
view.subviews.forEach { (item) in
item.removeFromSuperview()
}
view是您要从中删除所有内容的视图。您只是通过forEach删除每个子视图