2009-11-29 3 views

Répondre

3

J'ai une catégorie qui ajoute la méthode suivante pour UIView pour ce genre de chose:

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

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

Vous pouvez alors NSLog() le tableau retourné. Alternativement, pour un peu plus de détails, vous pouvez utiliser ce qui suit:

- (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

c'est tout! Merci!!!!! – SpaceDog

Questions connexes