查看当前viewtree结构
下列代码加入到AppDelegate
- (void)dumpView:(UIView *)aView atIndent:(int)indentinto:(NSMutableString *)outstring
{
for (int i = 0; i< indent; i++) [outstring appendString:@"--"];
[outstringappendFormat:@"[%2d] %@\n", indent, [[aView class] description]];
for (UIView *viewin [aView subviews])
[selfdumpView:view atIndent:indent + 1 into:outstring];
}
// Start the tree recursion at level 0 with the root view
- (NSString *) displayViews: (UIView *) aView
{
NSMutableString*outstring = [[NSMutableString alloc] init];
[self dumpView:self.window atIndent:0 into:outstring];
return outstring ;
}
// Show the tree
- (void)logViewTreeForMainWindow
{
// CFShow([self displayViews: self.window]);
NSLog(@"Theview tree:\n%@", [self displayViews:self.window]);
}
然后在你想使用的地方使用
AppDelegate*a=(AppDelegate *)[[UIApplicationsharedApplication] delegate];
[alogViewTreeForMainWindow];
此时打印的就是 当前的viewtree
如下:
[ 0] UIWindow
--[ 1] UILayoutContainerView
----[ 2] UITransitionView
------[ 3] UIViewControllerWrapperView
--------[ 4] UILayoutContainerView
----------[ 5] UINavigationTransitionView
------------[ 6] UIViewControllerWrapperView
--------------[ 7] UITableView
----------------[ 8] UITableViewCell
------------------[ 9] UITableViewCellContentView
--------------------[10] UILabel
--------------------[10] UIImageView
------------------[ 9] UIButton
--------------------[10] UIImageView
------------------[ 9] UIView
----------------[ 8] UITableViewCell
------------------[ 9] UITableViewCellContentView
--------------------[10] UILabel
--------------------[10] UIImageView
------------------[ 9] UIButton
--------------------[10] UIImageView
------------------[ 9] UIView
----------------[ 8] UITableViewCell
------------------[ 9] UITableViewCellContentView
--------------------[10] UILabel
--------------------[10] UIImageView
------------------[ 9] UIButton
--------------------[10] UIImageView
------------------[ 9] UIView
----------------[ 8] UITableViewCell
------------------[ 9] UITableViewCellContentView
--------------------[10] UILabel
--------------------[10] UIImageView
------------------[ 9] UIButton
--------------------[10] UIImageView
------------------[ 9] UIView
----------------[ 8] UITableViewCell
------------------[ 9] UITableViewCellContentView
--------------------[10] UILabel
--------------------[10] UIImageView
------------------[ 9] UIButton
--------------------[10] UIImageView
------------------[ 9] UIView
----------------[ 8] UITableViewCell
------------------[ 9] UITableViewCellContentView
--------------------[10] UILabel
--------------------[10] UIImageView
------------------[ 9] UIButton
--------------------[10] UIImageView
------------------[ 9] UIView
----------------[ 8] _UITableViewSeparatorView
----------------[ 8] _UITableViewSeparatorView
----------------[ 8] _UITableViewSeparatorView
----------------[ 8] _UITableViewSeparatorView
----------------[ 8] _UITableViewSeparatorView
----------------[ 8] _UITableViewSeparatorView
----------------[ 8] _UITableViewSeparatorView
----------[ 5] UINavigationBar
------------[ 6] UIMoreListController
------------[ 6] UINavigationItemView
------------[ 6] UINavigationButton
--------------[ 7] UIImageView
--------------[ 7] UIButtonLabel
----[ 2] UITabBarCustomizeView
------[ 3] UINavigationBar
--------[ 4] UINavigationBarBackground
--------[ 4] UINavigationItemView
--------[ 4] UINavigationButton
----------[ 5] UIImageView
----------[ 5] UIButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
----[ 2] UITabBar
------[ 3] _UITabBarBackgroundView
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel
------[ 3] UITabBarButton
--------[ 4] UITabBarSelectionIndicatorView
--------[ 4] UITabBarSwappableImageView
--------[ 4] UITabBarButtonLabel