2009-11-29 6 views
2

몇 주 전에 터미널에 덤프 할 수있는 코드가 발견되었습니다. NSLOG를 사용하여 애플리케이션에서 만든 모든 뷰, 하위 뷰 및 객체의 계층 구조 목록을 사용했습니다. 하지만이 코드를 더 이상 찾을 수 없습니까?IPHONE : 내 앱이 만든 모든 뷰와 하위 뷰를 나열합니다.

어떻게하는 지 알고 계십니까?

미리 도움을 청하십시오!

- (NSArray *) allSubviews { 
    NSMutableArray    *subviews = [self.subviews mutableCopy]; 

    for (UIView *view in self.subviews) { 
     [subviews addObjectsFromArray: [view allSubviews]]; 
    } 
    return subviews; 
} 

할 수 있습니다 다음 NSLog() 반환 된 배열 :

답변

3

나는 이런 종류의에 대한 UIView의에 다음과 같은 방법을 추가 범주가 있습니다. 또는 좀 더 자세히 알아 보려면 다음을 사용할 수 있습니다.

- (NSString *) hierarchyToStringWithLevel: (int) level { 
    NSMutableString    *results = [NSMutableString stringWithString: @"\n"]; 

    for (int i = 0; i < level; i++) { 
     [results appendFormat: @"-\t"]; 
    } 

    [results appendFormat: @"[%@, 0x%X], %@", [self class], self, NSStringFromCGRect(self.frame)]; 
    for (UIView *child in self.subviews) { 
     [results appendFormat: @"%@", [child hierarchyToStringWithLevel: level + 1]]; 
    } 
    return results; 
} 
+0

그게 전부입니다! 감사!!!!! – SpaceDog

관련 문제