美文网首页环境集成iOS 开发 iOS Developer
iOS开发——符号断点的实际运用:定位当前的ViewContro

iOS开发——符号断点的实际运用:定位当前的ViewContro

作者: Lol刀妹 | 来源:发表于2016-08-02 15:32 被阅读924次
    T-ara 朴智妍

    关于符号断点(Symbolic Breakpoint)

    符号断点是让方法中断的断点,也就是说,通过符号断点我们可以定位到指定的方法。那么这个有什么用呢?回想一下你是否遇到过这种情况:当接手别人的项目时,程序繁琐又复杂,想找当前页面对应的ViewController,结果找半天都找不到,恼怒之余,不禁骂出一个字:(此处省略一个字😱)。
    其实,当你了解符号断点后,这都不是事了。

    思路

    每个ViewController都有viewWillAppear:方法,那么我们只需要定位到viewWillAppear:这个方法,然后将执行这个方法的对象打印出来,不就OK了吗?

    符号断点登场

    先来看看符号断点

    在这里添加符号断点

    编辑符号断点

    编辑符号断点
    如上图:我添加了一个符号断点用于截取BaseViewController(我的所有ViewController都继承自BaseViewController)的viewWillAppear:方法(注意:viewWillAppear:有冒号,因为带参数,不写冒号无法截取此方法)。
    我给这个符号断点添加了三个action:
    • po self 用于在控制台打印出执行这个方法的对象(你以为只是打印出来就可以了吗?)
    • Log Message dnf 用于在控制台打印出“dnf”(想想为什么要打印出“dnf”,以及再想想为什么打印出“dnf”而不是“LOL”)
    • Sound Glass 会在执行这个方法时发出悦耳的声音(只是为了好听吗?)

    符号断点添加编辑完成后运行程序,你首先会听到清脆的一声。。。这提示你符号断点对应的方法已经被执行,你可能会说哎呀妈呀说好的ViewController呢?别急,在控制台搜索“dnf”,“dnf”上面的那个对象就是你的对象很满意吧?),如果没有Log Message dnf你将很难找到对象,你只有慢慢在控制台里寻找你的对象,所以,现在知道dnf什么用了吧(助你快速找到对象)。
    比如说我的运行结果如下图:

    找到对象好开心

    后记

    关于符号断点,基本上就那么多吧。文中如有差错,请务必提出,更欢迎提出更好的方法或者符号断点更多的用法,相互学习😄(不要问我为什么不打印出“LOL”)

    相关文章

      网友评论

      • 751fc49dcbfd:响应连 是不是更快
        47号同学:请问一下响应连方案是啥?能分享一下吗?
        Lol刀妹:@1140752635 这个不了解,能分享下吗:flushed:
      • 苦工:符号断点只能断住 viewWillAppear viewDidLoad 这两个方法吗 其它方法能断住吗
        Lol刀妹:@旧饭盆mingzhi_liu 都可以
      • 十一岁的加重:发现博主有很多开发技巧啊
        Lol刀妹:@十一岁的加重 平时积累的:smile:

      本文标题:iOS开发——符号断点的实际运用:定位当前的ViewContro

      本文链接:https://www.haomeiwen.com/subject/egoxsttx.html