转载自:http://blog.csdn.net/theonezh/article/details/8216584
// Recursively travel down the view tree, increasing the indentation level for children
- (void
)dumpView:(UIView
*)aView atIndent:(int
)indent into:(NSMutableString
*)outstring
{
for
(int
i = 0
; i < indent; i++) [outstring appendString
:@"--"
];
[outstring appendFormat
:@"[%2d] %@\n"
, indent, [[aView class
] description
]];
for
(UIView
*view in
[aView subviews
])
[self
dumpView
: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 autorelease
];
}
// Show the tree
- (void
)logViewTreeForMainWindow
{
//
CFShow([self displayViews: self.window]);
ATLogInfo
(
@"The view tree:\n%@", [
self
displayViews
:
self
.
window
]);
}
具体用法就是在你想知道你的view的层次的时候,调用一下这个logViewTreeForMainWindow函数就可以了。
比方说:下面这个就是我的打印结果。非常清晰明了!
[ 0] UIWindow
--[ 1] UILayoutContainerView
----[ 2] UINavigationTransitionView
------[ 3] UIViewControllerWrapperView
--------[ 4] UIView
-----rootViewController
----------[ 5] UITableView
------------[ 6] ServerViewCell_iphone
--------------[ 7] UITableViewCellContentView
------------[ 6] ServerViewCell_iphone
--------------[ 7] UITableViewCellContentView
----[ 2] UINavigationBar
------[ 3] UINavigationBarBackground
------[ 3] UILabel
------[ 3] UIButton
--------[ 4] UIImageView
--------[ 4] UIImageView
--[ 1] UIView
----backView
--[ 1] UITransitionView
----[ 2] UIView ----CameraPlayerView.
------[ 3] UIView for zoom.--frameView.
--------[ 4] UIImageView
------[ 3] UIImageView
------[ 3] UILabel
--------[ 4] UIImageView
------[ 3] UIImageView
------[ 3] UINavigationBar
--------[ 4] UINavigationBarBackground
--------[ 4] UINavigationItemView
----[ 2] UILayoutContainerView
------[ 3] UINavigationTransitionView
-----recordVideoView
--------[ 4] UIViewControllerWrapperView
----------[ 5] UIView
------------[ 6] UITableView
--------------[ 7] UIImageView
--------------[ 7] UIImageView
------------[ 6] UIToolbar
--------------[ 7] _UIToolbarBackground
--------------[ 7] UISegmentedControl
------[ 3] UINavigationBar
--------[ 4] UINavigationBarBackground
--------[ 4] UILabel
--------[ 4] UIButton
----------[ 5] UIImageView
----------[ 5] UIButtonLabel
分享到:
相关推荐
UIView-Borders-Swift 这个项目是从项目 ( ) 的 Swift 迁移安装只需将 UIViewBorder.swift 导入您的项目,您就可以立即开始在所有 UIView 中使用该扩展。用法您可以依靠 Aaron 的来了解用法。
这个压缩包"UIView AutoLayout.zip"包含的项目名为"UIView-AutoLayout-master",很可能是GitHub上的一个开源项目,用于简化Objective-C中使用AutoLayout的过程。 在Objective-C中,原生的AutoLayout使用`...
在iOS应用开发中,我们经常会遇到需要在原生的UIKit(UIView)和游戏引擎如Cocos2d-x之间进行交互的情况。这种交互涉及到场景的切换,以便为用户提供更丰富的体验或者实现特定的功能。Cocos2d-x是一个强大的2D游戏...
要安装它,只需将以下行添加到您的Podfile中: pod 'UIView-Shimmer' , '~> 1.0' 然后导入 import UIView_Shimmer 迅捷软件包管理器UIView-Shimmer可通过Swift Package Manager获得。 要添加软件包,请转到File -> ...
UIView框架助手 淹没在布局和定位代码中? 在常见情况下,最多可减少75%。 设定X和Y // Then CGRect frame = myView.frame; frame.origin.x = ... frame.origin.y = ... myView.frame = frame; // Now [myView ...
UIView-Positioning, 在UIView对象中,基于简单属性的框架属性设置 uiview定位收费 UIView Positioning 是一个快速扩展,它提供简单的shorthand 方法,以方便的方式定义任何UIView对象的框架属性( 宽度,高度,x,y ...
来源:Licence:BSD平台:iOS设备:iPhone / iPad作者:Philip Yu 给任意UIView视图四条边框加上阴影,可以自定义阴影的颜色、粗细程度、... [优才 · Code4App]编译测试,适用环境:Xcode 4.5, iOS 5.0 以上。
在iOS开发中,`UIView-UIImageEffects`是一个用于在Objective-C中实现视图(UIView)模糊效果的库。这个库提供了便捷的方法,帮助开发者轻松地将模糊效果应用到UI元素上,尤其是`UIImage`对象。模糊效果在现代移动...
变更日志(v1.0.2) 显式导入的UIKit 在自述文件中添加了Swift文档安装说明可可豆pod 'UIView-AutoLayoutView'手动的只需将UIView + AutoLayoutView文件夹拖放到您的项目中,然后在需要访问其提供的信息的类中引用...
`UIView-LoadNib` 是一个Objective-C类别,它扩展了`UIView`的功能,允许开发者方便地从XIB(Interface Builder文件)加载视图。这篇文章将深入探讨`UIView-LoadNib`的使用方法,以及如何利用它来提高开发效率。 ...
定义UIView frame属性的UIView-Positioning,源码UIView-Positioning,UIView+Positioning是一个Objective-C Category,为定义UIView frame属性(宽度、高度和X、Y)提供好了简单便捷的方法。 UIView+Positioning ...
UIView-draggable, 添加拖动功能的UIView类别 添加拖动功能的UIView类别。 屏幕截图 CocoaPods安装将 pod'UIView draggable' 添加到 Podfile运行 pod install运行 open App.xc
- 视图可以包含其他视图,形成层次结构。子视图覆盖父视图的内容,根据它们在数组中的顺序决定叠加顺序。改变父视图的尺寸会影响子视图的尺寸和位置,而事件响应遵循响应者链,从最具体的视图开始,未处理的事件会...
`UIView-Category`是一个开源项目,通过创建一个`UIView`的分类(Category),扩展了`UIView`的功能,使得开发者能更方便地自定义和管理视图。这个项目特别强调了在Interface Builder(IB)中的使用,利用`...
在iOS开发中,UIView是构建用户界面的基本组件。它提供了屏幕上的可视元素,如按钮、文本字段、图片等。在本教程中,我们将探讨如何创建一个简单的“七彩霓虹灯”Demo,这对于初学者来说是一个很好的实践项目,能够...
在iOS开发中,经常需要将一个UIView对象的内容转化为图片,以便于分享、存储或进行其他图形操作。这个过程涉及到的主要知识点是UIView的渲染和图片处理。以下是对这一主题的详细阐述。 首先,UIView是一个用于在...
"UIView-Parallaxify"是一个Objective-C库,专门为UIView类添加了视差滚动效果。这种效果通常在用户滚动屏幕时,背景元素以较慢的速度移动,与前景元素形成对比,从而营造出3D空间的错觉。 1. **Objective-C语言...
UIView 动画 UIView动画
-uiview动画 -CoreAnimation基本动画 -关键帧动画 -TransferAnimation 文章对应的开发说明 http://liuyanwei.jumppo.com/2015/10/30/iOS-Animation-UIViewAndCoreAnimation.html 如果大家支持,请在github...
UIView+DragDrop 用法 使用安装 pod "UIView+DragDrop" 包含 UIView+DragDrop.h #import "UIView+DragDrop.h" 在 UIView 或 UIView 子类上调用 'makeDraggable' 或 'makeDraggableWithDropViews:delegate:',设置...