1. 程式人生 > >iOS遞歸獲取子視圖

iOS遞歸獲取子視圖

get 獲取 顯示 with uiview and ted gets IT

// 遞歸獲取子視圖

- (void)getSub:(UIView *)view andLevel:(int)level {

NSArray *subviews = [view subviews];

// 如果沒有子視圖就直接返回

if ([subviews count] == 0) return;

for (UIView *subview in subviews) {

// 根據層級決定前面空格個數,來縮進顯示

NSString *blank = @"";

for (int i = 1; i < level; i++) {

blank = [NSString stringWithFormat:@" %@", blank];

}

// 打印子視圖類名

NSLog(@"%@%d: %@", blank, level, subview.class);

// 遞歸獲取此視圖的子視圖

[self getSub:subview andLevel:(level+1)];

}

}

iOS遞歸獲取子視圖