1.移除所有视图
方法一:
for(UIView *view in [self.view subviews])
{
[view removefromsuperview];
}
方法二(推荐):
[view.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
扩展:makeObjectsPerformSelector 这是 NSArray和NSSet的两个方法
- (void)makeObjectsPerformSelector:(SEL)aSelector;
//简介:让数组中的每个元素 都调用 aSelector
- (void)makeObjectsPerformSelector:(SEL)aSelector withObject:(id)argument;
//简介:让数组中的每个元素 都调用 aSelector,并把 withObject后边的argument 对象做为参数传给方法aSelector
调用实例:
[btnArray makeObjectsPerformSelector:@selector(setBackgroundColor:) withObject:[UIColor greenColor]];
[btnArray makeObjectsPerformSelector:@selector(setBackgroundColor:) withObject:[UIColor greenColor]];
2.移除指定视图
for(UIView *mylabelview in [self.view subviews])
{
if ([mylabelview isKindOfClass:[UILabel class]]) {
[mylabelview removeFromSuperview];
}
}
UIView *subviews = [self.view viewWithTag:1000];
[subviews removeFromSuperview];
//前提是创建子View的时候要加tag