2011-11-06 7 views
12

Vengo da Eclipse, vorrei sapere se c'è un modo in Xcode 4 per navigare attraverso chiamate di metodo come lì. So che posso passare alla definizione di un metodo, ma voglio sapere chi sta chiamando quel metodo/funzione. L'unico modo che ho trovato è una normale ricerca di testo, ma non è molto utile.Come si naviga attraverso una gerarchia di chiamate di metodo in Xcode 4?

+0

http://stackoverflow.com/questions/8146801/how-do-i-find-in-xcode-all-caller-functions-of-a-specific-function-like-eclipse – moCap

risposta

3

Effettuare una ricerca è infatti l'unico modo per controllare dove nel codice vengono inviati determinati messaggi. Xcode non ha tale funzionalità. Tieni presente che, anche se fosse così, non potrebbe essere perfetto perché i messaggi possono essere composti e inviati dinamicamente in fase di runtime.

+0

Sì, Objective-C è così "loose" che, anche guardando la chiamata, è spesso difficile indovinare quale metodo viene chiamato. La sua unica cosa che salva è che i nomi dei metodi tendono ad essere un capello più unico che in altre lingue, e spesso finiscono con ":", quindi la ricerca del testo non è sempre un approccio terribile. –

11

Poiché Xcode 4.4 è disponibile la funzionalità per cercare il chiamante e/o il chiamante immediato di un metodo. Sfortunatamente, non sembra esserci una comoda vista gerarchica come in Eclipse.

What's New in Xcode 4.4

Xcode può mostrare i chiamanti e callees della funzione o metodo corrente. È possibile accedere a questa funzione dal menu Mostra elementi correlati o utilizzando l'editor dell'Assistente e selezionando Chiamanti o Calle nel menu a comparsa della barra di scorrimento.

+3

Questa è la risposta corretta. Puoi trovare i chiamanti e i chiamanti dal pulsante File correlati nell'angolo in alto a sinistra dell'editor: http://i.stack.imgur.com/WEzB1.png. Il tasto di scelta rapida è 'Ctrl + 1'. – piperchester

5

qui è un visual come trovare il chiamante (s). Cerca la piccola immagine che ho evidenziato in rosa.

enter image description here

Problemi correlati