Xcode调试——打印控制器层次结构和视图层次结构

在 LLDB 使用 po [[UIWindow keyWindow] recursiveDescription] 来检查层次结构。它可以以文本形式打印出完整的视图层次结构

用 po [[[UIWindow keyWindow] rootViewController] _printHierarchy] 来检查视图控制器。这是一个苹果默默在 iOS 8 中为 UIViewController 添加的私有辅助方法


使用方法:

用xcode启动app,然后点击xcode暂停运行按钮,然后在调试控制台输入下面语句:




<pre name="code" class="objc">(lldb) po [[[UIWindow keyWindow] rootViewController] _printHierarchy]
<HMViewController 0x7fa7d2df7fb0>, state: appeared, view: <UIView 0x7fa7d2f14920>

(lldb) po [[UIWindow keyWindow] recursiveDescription]
<UIWindow: 0x7fa7d2df9fc0; frame = (0 0; 414 736); autoresize = W+H; gestureRecognizers = <NSArray: 0x7fa7d2dfb000>; layer = <UIWindowLayer: 0x7fa7d2df63e0>>
   | <UIView: 0x7fa7d2f14920; frame = (0 0; 414 736); autoresize = W+H; layer = <CALayer: 0x7fa7d2f078c0>>
   |    | <_UILayoutGuide: 0x7fa7d2f14c90; frame = (0 0; 0 20); hidden = YES; layer = <CALayer: 0x7fa7d2f084a0>>
   |    | <_UILayoutGuide: 0x7fa7d2f15830; frame = (0 736; 0 0); hidden = YES; layer = <CALayer: 0x7fa7d2f11300>>

(lldb) bt
* thread #1: tid = 0xd2ee, 0x0000000106efe4de libsystem_kernel.dylib`mach_msg_trap + 10, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
  * frame #0: 0x0000000106efe4de libsystem_kernel.dylib`mach_msg_trap + 10
    frame #1: 0x0000000106efd64f libsystem_kernel.dylib`mach_msg + 55
    frame #2: 0x000000010423f1d4 CoreFoundation`__CFRunLoopServiceMachPort + 212
    frame #3: 0x000000010423e62f CoreFoundation`__CFRunLoopRun + 1295
    frame #4: 0x000000010423de98 CoreFoundation`CFRunLoopRunSpecific + 488
    frame #5: 0x00000001087caad2 GraphicsServices`GSEventRunModal + 161
    frame #6: 0x0000000104b6c676 UIKit`UIApplicationMain + 171
    frame #7: 0x00000001035455af 数据请求测试`main(argc=1, argv=0x00007fff5c6fb600) + 111 at main.m:14
    frame #8: 0x0000000106bcd92d libdyld.dylib`start + 1
(lldb) 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值