【发布时间】:2011-03-05 00:28:53
【问题描述】:
我有一个使用计时器的 iPhone 应用程序,它会在每个时间间隔创建一些 UILabel 控件并将它们添加到 UIScrollView 中。
我想要做的是在将UILabel 控件放入UIScrollView 之前,在每个时间间隔清除UIScrollView。
如何清除UIScrollView的内容?
【问题讨论】:
标签: iphone uiscrollview
我有一个使用计时器的 iPhone 应用程序,它会在每个时间间隔创建一些 UILabel 控件并将它们添加到 UIScrollView 中。
我想要做的是在将UILabel 控件放入UIScrollView 之前,在每个时间间隔清除UIScrollView。
如何清除UIScrollView的内容?
【问题讨论】:
标签: iphone uiscrollview
for (UIView *subview in scrollView.subviews) {
[subview removeFromSuperview];
}
【讨论】:
您还将使用above solution 删除滚动条。要解决这个问题,你可能会问要移除的子视图是否是 UIImageView 实例。显然,如果您碰巧在滚动视图中有自己的 UIImageViews,则需要进行更多检查。
for (UIView *subview in scrollView.subviews) {
if(![subview isKindOfClass:[UIImageView class]])
[subview removeFromSuperview];
}
【讨论】:
我通常会选择这样的单班轮:如果您有兴趣..
while(scrollView.subviews.count > 0) [[scrollView.subviews objectAtIndex:0] removeFromSuperview];
【讨论】:
非常简单,只需在循环中编写此代码即可,其中动态结构会频繁创建和更改其内容。
[subview removeFromSuperview];
【讨论】:
一行
[_ui_scroll.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
【讨论】:
斯威夫特:
for subview in self.scrollView.subviews
{
subview.removeFromSuperview()
}
【讨论】: