LLDB学习

2017-02-21  本文已影响0人  冰室主人

p p/s 输出地址和具体的值 po输出具体的值(oc里所有的对象都是用指针表示的,打印出来的是对象的指针,而不是对象本身,可以采用 -o 来打印对象本身 为了更加方便的时候,LLDB为 “expression -o —” 定了一个别名 :po,expr在lldb中声明新的变量时,需要加上$符号,表示引用


屏幕快照 2017-02-21 上午11.13.19.png


屏幕快照 2017-02-21 上午9.52.14.png
打印视图的UI
屏幕快照 2017-02-21 上午9.52.30.png

expression(可以缩写成e)重新赋值 e var=newValue
b refreshUI(方法名) b 行数 设置断点
通过ID拿到view的引用,然后设置它的属性


屏幕快照 2017-02-21 上午10.30.54.png
expression -- self.view.backgroundColor=[UIColor redColor]//改变背景颜色
expression -- (void)[CATransaction flush]//刷新屏幕

当我们有一个地址,想找到具体地址对应的文件的位置的时候,可以使用 target modules lookup —adress命令
也可以简写为 target modules lookup -a
随着LLDB版本的更新,target modules 又可以简化为 image
所以 target modules lookup -a 可以写为 image lookup -a

image lookup -a 0x0000000102c15685//crash抛出的地址

方法默认情况下返回的是YES我们想观察它返回NO的情况,我们只需要在这个方法的开始位置 加一个断点,当程序中断的时候, 在LLDB控制台输入 thread return NO 这样程序就会直接跳出 isRunning 方法

thread return NO
p (int)[[[self view] subviews] count]//子视图的数量

//查看代码总行数
先cd 到项目文件目录下
find . -name "*.m" -or -name "*.h" -or -name "*.xib" -or -name "*.c" |xargs wc -l
上一篇 下一篇

猜你喜欢

热点阅读