在 Xcode,如何找到特定函数的所有调用函数?
将“项目中的查找”用作文本或符号。
AFAIK,没有等同于例如 Eclipse 或 NetBeans 已知的调用层次结构。
奇怪的是,重构工具可以检测所有的方法调用,但不能检测搜索。
因此,我只是使用它来将方法重命名为一个唯一的名称(例如,重置为 resetPlayer) ,然后在常规的文本搜索中使用新名称。
菜单 > 编辑 > 重构... > 重命名为惟一名称
2)搜索新名称
Xcode 4.5(测试版)有这个功能。当你突出显示... 一个函数时,你可以检查“调用者”和“被调用者”
编辑 我相信它位于该文件的文件面板的左上角... 所以双击功能来突出显示它,你点击文件面板选项(其中有“打开最近,打开未保存... ... 等”下拉菜单
EDIT #2
here's a picture to clarify (since i dont know what this menu button is called):
我相信 XCode 4.5已经不再是测试版,而是公开发布了
编辑 # 3
还要注意的是,这个调用者不会搜索在 performSelector方法下被调用的情况,比如,如果你做了以下操作,那么拥有这个 performSelector的特定调用者就不会显示出来:
performSelector
[self performSelector:@selector(checkIfShouldStopMovement) withObject:nil afterDelay:0.25];
该功能在 XCode 4.4.1中可用,请参见: http://smilingfinney.blogspot.de/2012/09/method-callers-in-xcode-44.html
在 Xcode,最快的方法是:
这是查看-> 编辑器-> 在 Xcode 菜单中显示相关项目的快捷方式。
这也可以通过助理编辑器访问,如下面的截图所示。无论插入点在左侧主编辑器中的哪个方法,其调用方都将显示在助理编辑器中。我发现这是连续查看每个呼叫者的最佳方式,因为一旦你选择了“呼叫者”,你就可以通过跳转栏右侧的下一个弹出菜单选择下一个呼叫者。
在 Xcode-7中,你可以获得调用层次结构的功能,右键点击这个函数,然后点击“查找调用层次结构”: 图像参考:
从 Xcode 7开始使用 something + Ctrl + Shift + H 组合键。
选择感兴趣的方法时按 ⌘+Ctrl+Shift+H快捷键(用鼠标或光标)
⌘+Ctrl+Shift+H
但是您也可以在 XCode -> Preferences -> Key Bindings中指定任何其他快捷方式
XCode -> Preferences -> Key Bindings
Xcode 10 upwards seems to have made it easier. Just 点击命令 on the function and you should see it in the drop down.