Xcode'da yöntem referanslarını bulma


174

Xcode'da bir yöntemin veya özelliğin çağrıldığı tüm yerleri bulmanın bir yolu var mı?

Örneğin, Eclipse'de bir yöntemi sağ tıklatıp Referans bul'u seçebilirsiniz . Xcode'da benzer bir şey var mı?

Yanıtlar:


252
  1. İlgilendiğiniz yöntemi seçin veya metin imlecini içine yerleştirin.
  2. Editörün sol üst köşesindeki simgeyi kullanarak "İlgili Dosyalar" menüsünü açın. (Geri düğmesinin hemen solundaki düğme).
  3. Seçilen yöntemi çağıran tüm yöntemlerin listesi için "Arayanlar" alt menüsüne gidin ve bu dosyaya ve yönteme atlamak için bunlardan herhangi birine tıklayın.

Resimlerde...

Yukarıdaki 1. ve 2. adımların ekran görüntüsü.

Yukarıdaki 3. adımın ekran görüntüsü

Birkaç not:

  • Bunu özellikler için de yapabilirsiniz.
  • Yöntemin çağrıldığı yere atlamak için Arayanlar menüsünden bir arama yöntemi seçtiğinizde, Xcode'un yalnızca ilk aramayı vurguladığını unutmayın . Her çağrı yöntemi, yönteminize birçok çağrı içeriyor olsa bile 'Arayanlar' listesinde yalnızca bir kez görünür. Bu nedenle, uygulamanızda bir yöntemin çağrıldığı her yerde bir değişiklik yapmaya çalışıyorsanız, bir çağrı yönteminin ilgilendiğiniz yönteme iki çağrı içeren yerlerde bazılarını kaçırmamaya dikkat edin.

34
Menüyü getirmek için varsayılan kısayol, ^1bu yüzden genellikle ^1, c, enterlisteyi açmak için basabiliyorum .
Peter Theill

Bu, yöntemin tüm Arayanlarını ve üst uygulamaları bulur. Yalnızca bu uygulamanın Arayanlarını bulmanın bir yolu var mı ?
Daniel Kaplan

1
@DanielKaplan Tahmin etmem, çünkü en azından bazı durumlarda derleyicinin hangi uygulamanın çağrılacağını bilmesinin bir yolu yoktur.
Mark Amery

Benim yöntem denir initve bu da adlandırılmış herhangi bir yöntemi getirir init. Çok akıllı değil ...
Nathan H

36

Evet, Asistan düzenleyicisini açın ve Muadiller yerine Arayanlar'ı seçin.

resim açıklamasını buraya girin


1
Sen yok olması , hızlı bir şekilde çağıran bir çok metod düzenleme olacağız eğer uygun olabilmesine karşın, bunun için bölünmüş editörü kullanımı. Cevabımı gör.
Mark Amery

18

XCode 4.5 itibariyle, Arama Gezgini'nin arama alanındaki "Bulma seçeneklerini göster" i tıklayabilirsiniz. Burada "Sembol Referansları" belirtebilirsiniz.

resim açıklamasını buraya girin


2
Bu çıplak bir arama üzerinde hafif bir gelişmedir, ancak sadece aradığınız değil, tüm referansları döndürür . Örneğin, "height" özelliğine sahip bir sınıfınız varsa, height özelliğinizde sembol referansları aramak, kullandığınız diğer tüm yükseklik özelliklerine referanslar döndürür. istemek. Oldukça güzel çalışan bir kesmek için şunu görün: stackoverflow.com/a/5457479/850721
Mike Lorenz


7

Ekleme noktasını bir yöntem çağırma veya bildirimine yerleştirin ve Bul> Seçili Sembolü Projede Bul'u seçin. Çok parçalı seçiciler için bu yalnızca ilk kısmı vurgulayacaktır, ancak arama nispeten güvenilir bir şekilde işe yarıyor gibi görünmektedir. Bunun yerine tüm hattı vurgulayan Arama Hiyerarşisini Bul'u da kullanabilirsiniz.

İlgili bağlamsal menü öğesi (Çalışma Alanında Seçili Sembolü Bul) da çalışır, ancak düzgün bir şekilde çalışmak biraz daha zordur. Hiçbir metnin seçilmediğinden emin olun, aksi takdirde seçicinin tamamı yerine seçilen kelimeyi arar. Bunu yapmak için, aynı konumda sağ fare düğmesine (veya Control tuşuna basarak) tıklamadan önce sol fare düğmesini tıklatabilirsiniz. Bağlamsal Arama Arama Hiyerarşisinde böyle bir sorun yoktur.


onun da aynı için bir klavye kısayolu olması çok kullanışlı, ayıklama çok daha hızlı olur
Naishta

-11

Xcode 4 ile artık referanslara sağ tıklayıp "tanımlamaya atla" yı seçebilirsiniz.


12
Bu tam tersi soruyu cevaplar.
Richard
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.