Кстати, к своему ответу я прикрепил изображение. и версии XCode в настоящее время поддерживают это. готовы ли вы проголосовать / принять ответ, если вас устраивает какой-либо из ответов ??
Дэвид Т.
Ответ @uiroshan ниже наиболее удобен, если вы делаете это часто (⌘ + Ctrl + Shift + H)
drpawelo
Ответы:
125
Xcode 4.5 (в бета-версии) имеет эту функциональность. когда вы выделяете say ... функцию, вы можете проверить "вызывающий" и "вызываемый"
редактировать, я считаю, что он расположен в верхнем левом углу файловой панели для этого файла ... поэтому дважды щелкните функцию, чтобы выделить ее, и нажмите на параметры панели файлов (тот, который имеет "открытые недавние, открытые несохраненные ... и т.д. "
РЕДАКТИРОВАТЬ # 2
вот изображение для пояснения (так как я не знаю, как называется эта кнопка меню) :
ТАКЖЕ - XCode 4.5 больше не является бета-версией, я полагаю, и на самом деле публично
РЕДАКТИРОВАТЬ # 3
также обратите внимание, что этот вызывающий объект НЕ выполняет поиск вызываемого по performSelectorметоду, так как конкретный вызывающий объект, у которого это есть performSelector, не появится, если вы сделали что-то вроде:
@pille А. Понятно, я не знал, что вы можете получить к нему доступ таким образом. Я поддержал ваш ответ и отредактировал свой ответ, чтобы показать, как работает пользовательский интерфейс. Спасибо за ярлык !!
Дэвид Т.
55
В XCode 4.5 самый быстрый способ таков:
Выберите метод в коде (дважды щелкните или отметьте курсором мыши)
Нажмите Ctrl+1
Выберите «Абоненты» во всплывающем меню.
Это ярлык для перехода в меню View-> Standard Editor-> Show Related Items в меню заголовка XCode.
Меню вызывающих абонентов также зависит от контекста, поэтому вам не нужно сначала выбирать метод. Просто поместите его в любом месте метода, для которого вы хотите видеть вызывающих лиц, прежде чем вызывать ярлык <kbd> Ctrl </kbd> + <kbd> 1 </kbd>.
Джей
Милая, не знала этого!
pille
2
Не могу поверить, что нет более быстрого способа ... Я весьма разочарован Xcode после использования IntelliJ
stevo.mit
35
используйте комбинацию клавиш ⌘ + Ctrl + Shift + H в XCode 7 и далее.
Это также можно получить через помощник редактора, как показано на скриншоте ниже. В каком бы методе вы не установили точку вставки в главном редакторе слева, вызывающие его объекты будут отображаться в помощнике редактора. Я обнаружил, что это лучший способ просмотра каждого вызывающего абонента по очереди, поскольку после того, как вы выбрали «вызывающие абоненты», вы можете выбрать следующего вызывающего абонента через следующее всплывающее меню справа на панели перехода.
Это здорово, но мне потребовалось время, чтобы понять, с чего начать. Для других, следующих за мной: обратите внимание, что на снимке экрана Брайана раскрывающееся раскрывающееся меню не является меню «Показать связанные элементы» (ctrl + 1), упомянутым в некоторых других ответах. Вместо этого в помощнике редактора щелкните раскрывающийся список справа от кнопки «Вперед» и выберите «Вызывающие».
Эшли
1
Вам не нужно использовать помощник редактора. Вы можете открыть то же меню в основном редакторе.
funroll
18
В Xcode-7 у вас есть функция получения иерархии вызовов. Щелкните функцию правой кнопкой мыши и выберите «Найти иерархию вызовов»:
ссылка на изображение:
Лично я использую ⌘ + H (сначала вам нужно переключить un-assign it с 'Hide XCode'. Просто введите «Hide» в поле Filter, выберите его и удалите с помощью Backspace)
drpawelo
2
Как ни странно, инструмент рефакторинга может обнаруживать все вызовы методов, но не поиск.
Поэтому я просто использую его, чтобы переименовать свой метод в уникальное имя (например, сбросить на resetPlayer), а затем использовать новое имя в обычном текстовом поиске.
1.) Меню> Правка> Рефакторинг ...> Переименовать в уникальное имя
Ответы:
Xcode 4.5 (в бета-версии) имеет эту функциональность. когда вы выделяете say ... функцию, вы можете проверить "вызывающий" и "вызываемый"
редактировать, я считаю, что он расположен в верхнем левом углу файловой панели для этого файла ... поэтому дважды щелкните функцию, чтобы выделить ее, и нажмите на параметры панели файлов (тот, который имеет "открытые недавние, открытые несохраненные ... и т.д. "
РЕДАКТИРОВАТЬ # 2
вот изображение для пояснения (так как я не знаю, как называется эта кнопка меню) :
ТАКЖЕ - XCode 4.5 больше не является бета-версией, я полагаю, и на самом деле публично
РЕДАКТИРОВАТЬ # 3
также обратите внимание, что этот вызывающий объект НЕ выполняет поиск вызываемого по
performSelector
методу, так как конкретный вызывающий объект, у которого это естьperformSelector
, не появится, если вы сделали что-то вроде:источник
В XCode 4.5 самый быстрый способ таков:
Это ярлык для перехода в меню View-> Standard Editor-> Show Related Items в меню заголовка XCode.
источник
используйте комбинацию клавиш ⌘ + Ctrl + Shift + H в XCode 7 и далее.
источник
Это также можно получить через помощник редактора, как показано на скриншоте ниже. В каком бы методе вы не установили точку вставки в главном редакторе слева, вызывающие его объекты будут отображаться в помощнике редактора. Я обнаружил, что это лучший способ просмотра каждого вызывающего абонента по очереди, поскольку после того, как вы выбрали «вызывающие абоненты», вы можете выбрать следующего вызывающего абонента через следующее всплывающее меню справа на панели перехода.
источник
В Xcode-7 у вас есть функция получения иерархии вызовов. Щелкните функцию правой кнопкой мыши и выберите «Найти иерархию вызовов»: ссылка на изображение:
источник
Xcode 10 и выше, похоже, упростил эту задачу. Просто команда Щелкните функцию, и вы должны увидеть ее в раскрывающемся списке.
источник
Используйте «Найти в проекте» как текст или как символ.
AFAIK, нет эквивалента, например, иерархии вызовов, известной из Eclipse или NetBeans.
источник
Нажмите
⌘+Ctrl+Shift+H
сочетание клавиш, когда выбран интересующий метод (с помощью мыши или курсора). (согласно ответу @uiroshan)Но вы также можете указать любой другой ярлык в
XCode -> Preferences -> Key Bindings
источник
Как ни странно, инструмент рефакторинга может обнаруживать все вызовы методов, но не поиск.
Поэтому я просто использую его, чтобы переименовать свой метод в уникальное имя (например, сбросить на resetPlayer), а затем использовать новое имя в обычном текстовом поиске.
1.) Меню> Правка> Рефакторинг ...> Переименовать в уникальное имя
2.) поиск нового имени
источник
Функциональность доступна в XCode 4.4.1, см. Это: http://smilingfinney.blogspot.de/2012/09/method-callers-in-xcode-44.html
источник