我试图删除添加到视图中的所有子视图,因此我实现了一个循环来使用以下内容迭代子视图:
for subview in view.subviews {
println(subview)
//subview.removeFromSuperview()
}
我通过向我的视图添加 UILabel 来测试这一点,然后运行此代码。输出包含我的 UILabel,但也包含 _UILayoutGuide。那么,我的问题是如何确定子视图是我添加的还是系统添加的?
如果你只是想防止循环删除_UILayoutGuide
(这是类UILayoutSupport
), 尝试这个:
for subview in self.view.subviews {
if !(subview is UILayoutSupport) {
print(subview)
subview.removeFromSuperview()
}
}
一般来说,如果您想阻止删除除_UILayoutGuide
如果您知道要从 UIView 中删除的特定类型的子视图,则可以将删除的子视图限制为这些类型,例如:
for subview in view.subviews {
if subview is ULabel {
println(subview)
subview.removeFromSuperview()
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)