2012-03-11 3 views
14

Niedawno wyczyściłem moją klasę, która miała wiele nieużywanych metod i zmiennych. Kiedy zbudowałem swój projekt, xCode ostrzegł o Incomplete implementation. Klasa jest ogromna i zajęło mi dużo czasu, aby dowiedzieć się, która metoda nie została zaimplementowana w .m. Aby zapobiec spędzaniu tak dużo czasu na tym ostrzeżeniu w przyszłości, chciałbym wiedzieć, czy istnieje szybszy sposób na poznanie niezmodyfikowanych metod. Być może brakuje jakiejś wbudowanej funkcji xCode!Szybki sposób na znalezienie przyczyny niezakończonego ostrzeżenia o wykonaniu

Edit- (z odpowiedziami) tylko w przypadku kiedy czują potrzebę wizualizacji, co ma być zrobione, spójrz na to:

enter image description here

Najpierw kliknij na ostrzeżeniu zakładka punktów przerwania, aby zobaczyć szczegóły ostrzeżenia na żółtej karcie, jak poniżej. Pojedyncze kliknięcie podświetlonej części przeniesie Cię bezpośrednio do niekompletnych metod.

+0

Ostrzeżenie nie jest nieszkodliwe. –

+0

@KevinBallard Byłoby pomocne, gdybyś mógł wymienić niektóre przypadki, kiedy może to zaszkodzić :) – tipycalFlow

+0

Kiedy ktoś wysyła wiadomość do twojej klasy, która twierdzi, że ją implementuje, a następnie ulega awarii, ponieważ nie implementuje tej metody. Lub jeśli deklarujesz zgodność z protokołem, ale nie wdrażasz wszystkich wymaganych metod, a ktoś wysyła wiadomość do Ciebie, ponieważ twierdzisz, że implementujesz protokół, ale tak naprawdę nie implementujesz go, a więc się zawiesisz. –

Odpowiedz

30
  • Pojawi się żółty znak ostrzegawczy obok @implementation Classname w pliku .m ..
  • Kliknij kilka razy na żółtym symbolem i Xcode zajmie Ci prosto do wymaganego sposobu ..

Edit (Ponieważ komentarz otrzymała wiele głosów.)

powyższy jeden jest szybki way..and może nie działać w przyszłej wersji Xcode

właściwy sposób (jak podane przez @alex szarości)

  1. W redaktora> Idź do wystawienia Navigator
  2. Można tam znaleźć każde ostrzeżenie z Xcode skoki do kwestii bezpośrednio na click.Revealing ostrzeżenie za pomocą rozwijanej także pozwala dowiedzieć się więcej szczegółów o numerze
+0

Ach ... dokładnie to, czego szukałem – tipycalFlow

+10

co oznacza @shubhank przez "Kliknij kilka razy" to ... jeśli w edytorze: kliknij żółty wykrzyknik na lewym pasku bocznym lub w inny sposób "pokaż problem" w navigator ... następnie, w nawigatorze ... kliknij na trójkąt ujawnienia, aby "rozwinąć" problem .., który z kolei pokaże ci brakującą metodę. –

+0

Kocham cię, alex szary. To doprowadziło mnie do szaleństwa przez cały pierwszy rok programowania na iOS. – GoldenJoe

3

w kliknięcia nawigatora na trójkąt, aby „rozwinąć” problemu, który będzie z kolei pokazuje faktycznie brakującą metodę.

(jest to kopia alex gray komentarza, ponieważ właściwe umiejscowienie go w odpowiedziach)

+0

Mogę dać tylko +1, ponieważ @ Shubhank's way jest szybszy! – tipycalFlow

+0

Nie mogłem użyć tego, co opisałem @Shubhank - to nie działa dla mnie - dlatego szukałem innej odpowiedzi i znalazłem ją w komentarzach. – sergtk

+0

Jaką wersję xCode używasz? Kroki dla wersji 4.1+ (nie można sprawdzić niższych wersji): Kliknij trójkąt ostrzegawczy dotyczący "Niekompletnej implementacji", który pokazuje szczegóły ostrzeżenia na żółtym pasku w kontynuacji trójkąta ostrzegawczego. Kliknij dwukrotnie ten żółty pasek, a zostaniesz przeniesiony bezpośrednio do metod. – tipycalFlow

9

Kliknij na wykrzyknikiem w Nawigatorów Bar (lub poleceń - lub View -> Navigators -> Show Issue Navigator), a następnie kliknij przycisk ujawnienia z Semantic Issue - Incomplete implementation, a następnie ostrzeżenie.

Zobacz przykład poniżej

enter image description here