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

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

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


使用方法:

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




[objc]  view plain  copy
  1. <pre name="code" class="objc">(lldb) po [[[UIWindow keyWindow] rootViewController] _printHierarchy]  
  2. <HMViewController 0x7fa7d2df7fb0>, state: appeared, view: <UIView 0x7fa7d2f14920>  
  3.   
  4. (lldb) po [[UIWindow keyWindow] recursiveDescription]  
  5. <UIWindow: 0x7fa7d2df9fc0; frame = (0 0414 736); autoresize = W+H; gestureRecognizers = <NSArray: 0x7fa7d2dfb000>; layer = <UIWindowLayer: 0x7fa7d2df63e0>>  
  6.    | <UIView: 0x7fa7d2f14920; frame = (0 0414 736); autoresize = W+H; layer = <CALayer: 0x7fa7d2f078c0>>  
  7.    |    | <_UILayoutGuide: 0x7fa7d2f14c90; frame = (0 00 20); hidden = YES; layer = <CALayer: 0x7fa7d2f084a0>>  
  8.    |    | <_UILayoutGuide: 0x7fa7d2f15830; frame = (0 7360 0); hidden = YES; layer = <CALayer: 0x7fa7d2f11300>>  
  9.   
  10. (lldb) bt  
  11. thread #1: tid = 0xd2ee, 0x0000000106efe4de libsystem_kernel.dylib`mach_msg_trap + 10, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP  
  12.   * frame #00x0000000106efe4de libsystem_kernel.dylib`mach_msg_trap + 10  
  13.     frame #10x0000000106efd64f libsystem_kernel.dylib`mach_msg + 55  
  14.     frame #20x000000010423f1d4 CoreFoundation`__CFRunLoopServiceMachPort + 212  
  15.     frame #30x000000010423e62f CoreFoundation`__CFRunLoopRun + 1295  
  16.     frame #40x000000010423de98 CoreFoundation`CFRunLoopRunSpecific + 488  
  17.     frame #50x00000001087caad2 GraphicsServices`GSEventRunModal + 161  
  18.     frame #60x0000000104b6c676 UIKit`UIApplicationMain + 171  
  19.     frame #70x00000001035455af 数据请求测试`main(argc=1, argv=0x00007fff5c6fb600) + 111 at main.m:14  
  20.     frame #80x0000000106bcd92d libdyld.dylib`start + 1  
  21. (lldb)   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值