ios 移除所有子视图

作者: 苏坡乔 | 来源:发表于2016-03-03 13:54 被阅读6863次

    不用循环,一行代码移除所有子视图

    [view.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
    

    相关文章

      网友评论

      • brance:- (void)removeAllSubviews {
        //[self.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
        while (self.subviews.count) {
        [self.subviews.lastObject removeFromSuperview];
        }
        }
        这个方法不错,YYKit 的源码
        苏澈su:这方法很6
        西叶lv:我记得系统有个[self.view removeAllsubviews];,难道是我记错了么??怎么也打不出这个方法……
        我系哆啦:这个方法好,不会造成在遍历过程中修改数组引起奔溃,不愧是YY
      • stillwalking:官方注释:- (void)makeObjectsPerformSelector:(SEL)aSelector NS_SWIFT_UNAVAILABLE("Use enumerateObjectsUsingBlock: or a for loop instead");
        所以还是乖乖用回循环好点
        微光星芒:@stillwalking 嗯,多谢. 我还以为这个方法用起来会有问题.
        stillwalking:@微光星芒 说此方法在 swift 中不可用,OC 应该还可以
        微光星芒:@stillwalking 你好,这个能详细的解释一下吗? 会出现怎样的问题?

      本文标题:ios 移除所有子视图

      本文链接:https://www.haomeiwen.com/subject/zvznkttx.html