zoukankan      html  css  js  c++  java
  • iOS 遍历所有子视图subviews的2种方法

    在做项目的过程中,难免有时候会需要利用父子视图的关系去调用一些behavior。

    方法一,比较直接

        for (UIView *subViews in yourView.subviews) {  
            [self removSubviews:subViews];  
        }     
          
        -(void)removSubviews:(UIView *)subView  
        {  
          if (subView.subviews.count>0) {  
            for (UIView *subViews in subView.subviews) {  
    
               [self removSubviews:subViews];  
            }  
          }  
          else  
          {  
             NSLog(@"%i",subView.subviews.count);  
            [subView removeFromSuperview];  
          }  
        }  

    方法二,用类别

    // UIView+HierarchyLogging.h  
    @interface UIView (ViewHierarchyLogging)  
    - (void)logViewHierarchy;  
    @end  
      
    // UIView+HierarchyLogging.m  
    @implementation UIView (ViewHierarchyLogging)  
    - (void)logViewHierarchy  
    {  
        NSLog(@"%@", self);  
        for (UIView *subview in self.subviews)  
        {  
            [subview logViewHierarchy];  
        }  
    }  
    @end  
      
    // In your implementation  
    [myView logViewHierarchy];  
  • 相关阅读:
    Markdown快捷笔记
    Linux常用命令
    Git使用
    HTML
    JavaScript-笔记2
    AngularJS-笔记2
    AngularJS-笔记1
    JQuery-笔记
    设置DataGridView的某个单元格为ComboBox
    记录文件浏览历史路径
  • 原文地址:https://www.cnblogs.com/allanliu/p/4229762.html
Copyright © 2011-2022 走看看