Xcode arayan işlevlerini bulma


117

Xcode'da, belirli bir işlevin tüm arayan işlevlerini nasıl bulabilirim?


2
Bu arada, cevabıma bir resim ekledim. ve XCode sürümleri günümüzde bunu desteklemektedir. Cevaplardan herhangi birinden memnunsanız, bir cevabı yükseltmek / kabul etmek ister misiniz?
David T.

@uiroshan'ın aşağıdaki cevabı, bunu çok yaparsanız en uygunudur (⌘ + Ctrl + Üst Karakter + H)
drpawelo

Yanıtlar:


125

Xcode 4.5 (beta sürümünde) bu işleve sahiptir. vurguladığınızda ... bir işlev deyin, "arayan" ve "arayan" ifadelerini kontrol edebilirsiniz

düzenle , bu dosya için dosya panelinin sol üst tarafında bulunduğuna inanıyorum ... bu nedenle vurgulamak için işlevi çift tıklayın ve dosya paneli seçeneklerine tıklayın ("yakın zamanda aç, kaydedilmemiş ... vb "açılır

DÜZENLE # 2

işte açıklığa kavuşturmak için bir resim (çünkü bu menü düğmesine ne dendiğini bilmiyorum)görüntü açıklamasını buraya girin :

AYRICA - XCode 4.5 artık beta değil, inanıyorum ve aslında halka açık

DÜZENLE # 3

Ayrıca, bu arayan şeyin performSelectoryöntemin altında çağrılmayı ARAMADIĞINI da unutmayın , örneğin, buna sahip olan belirli arayan kişi, aşağıdaki performSelectorgibi bir şey yaptıysanız görünmeyecektir:

[self performSelector:@selector(checkIfShouldStopMovement) withObject:nil afterDelay:0.25];

5
Aslında Görünüm-> Standart Düzenleyici-> İlgili Öğeleri Göster, cevabıma bakın ( stackoverflow.com/a/13472334/888091 ).
pille

2
@pille Ah. Anladım, bu şekilde erişebileceğini bilmiyordum. Cevabınıza olumlu oy verdim ve arayüz yolunu göstermek için cevabımı düzenledim. Kısayol için teşekkürler !!
David T.

55

XCode 4.5'te en hızlı yöntem şudur:

  1. Kodda yöntemi seçin (çift tıklayın veya fare imlecinizi kullanarak işaretleyin)
  2. Basın Ctrl+1
  3. Açılır menüden "Arayanlar" ı seçin.

Bu, XCode'un başlık menüsünde Görünüm-> Standart Düzenleyici-> İlgili Öğeleri Göster'e gitmek için kısayoldur.


1
Arayanlar menüsü de içeriğe duyarlıdır, bu nedenle önce yöntemi seçmeniz gerekmez. <kbd> Ctrl </kbd> + <kbd> 1 </kbd> kısayolunu çalıştırmadan önce arayanları görmek istediğiniz yöntem içinde herhangi bir yere yerleştirin.
Jay

Tatlı, bunu bilmiyordum!
pille

2
Daha hızlı bir yol olmadığına inanamıyorum ... IntelliJ'i kullandıktan sonra Xcode ile oldukça hayal kırıklığına uğradım
stevo.mit

35

XCode 7'den itibaren ⌘ + Ctrl + Shift + H tuş kombinasyonunu kullanın.


2
Güzel çözüm. Teşekkür ederim!
Myxtic

İmleç, işlev adı üzerinde olmalıdır.
Ali Momen Sani

Kısayollarınızı düzenlemeniz durumunda: "Arama hiyerarşisini bulun" u arayın
brainray

4
Bu kombinasyona basmak için parmaklarımı kıracağım!
accid Parlak

Teşekkürler, bu tür bir çözüm arıyorum.
Hitesh Agarwal

23

Bu, aşağıdaki ekran görüntüsünde gösterildiği gibi yardımcı düzenleyici aracılığıyla da erişilebilir. Soldaki ana düzenleyicide ekleme noktasına sahip olduğunuz yöntem ne olursa olsun, arayanları yardımcı düzenleyicide görüntülenir. Bunu, her bir arayana arka arkaya bakmanın en iyi yolu olarak buldum, çünkü "Arayanlar" ı seçtikten sonra, atlama çubuğunun sağındaki bir sonraki açılır menüden bir sonraki arayanı seçebilirsiniz.

görüntü açıklamasını buraya girin


Bu harika - ama nasıl başlayacağımı anlamam biraz zaman aldı. Diğerleri için beni takip: Brian'ın ekran görüntüsünde, açık açılan olduğunu haber değil diğer bazı cevaplar belirtilen göster "İlgili Öğeler" (ctrl + 1) menüsü. Bunun yerine, yardımcı düzenleyicide, "İleri Git" düğmesinin sağındaki açılır menüyü tıklayın ve Arayanları seçin.
Ashley

1
Yardımcı düzenleyiciyi kullanmanıza gerek yok. Aynı menüyü birincil düzenleyicide açabilirsiniz.
funroll

18

Xcode-7'de çağrı mirasçılığını alma işlevine sahipsiniz. İşleve sağ tıklayın ve "Arama Hiyerarşisini Bul" seçeneğine tıklayın: resim referansı:


4
buna "Çağrı Hiyerarşisi" denir ve klavye kısayolu: CTRL-SHIFT-COMMAND-H (bir şey seçiliyken).
Bay Zystem

7

Xcode 10'un yukarı doğru olması bunu kolaylaştırmış gibi görünüyor. Sadece Komut Fonksiyona tıklayın ve açılır menüde görmelisiniz.

görüntü açıklamasını buraya girin


4

Projede Bul'u Metin veya Sembol olarak kullanın.

AFAIK, Eclipse veya NetBeans tarafından bilinen örneğin Çağrı Hiyerarşisinin eşdeğeri yoktur.


1
XCode'da "arayan" ve "arayan" vardır.


2

Garip bir şekilde, yeniden düzenleme aracı tüm yöntem çağrılarını algılayabilir ancak aramayı algılayamaz.

Bu yüzden, yöntemimi benzersiz bir adla yeniden adlandırmak için kullanıyorum (örn. ResetPlayer'a sıfırlamak için) ve ardından yeni adı normal bir metin aramasında kullanıyorum.

1.) Menü> Düzenle> Yeniden Değiştir ...> Benzersiz adla yeniden adlandır

2.) yeni adı arayın


Ayrıca, yeniden düzenleme işlemini gerçekten bitirmeden, yalnızca önizlemede değiştirilecek tüm yerleri gözden geçirebilirsiniz.
funroll

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.