Wie kann ich herausfinden, ob ein Objekt eine bestimmte Methode implementiert?

7

Ich durchlaufe ein NSArray, das viele verschiedene Arten von Objekten enthält. Es gibt viele Methoden, um herauszufinden, welche Klasse das Objekt ist. Ich habe jedoch keinen guten Weg gefunden, herauszufinden, ob ein Objekt eine bestimmte Funktion implementieren kann. Ich kann es in einen try-catch setzen, aber es wird immer noch eine Fehlermeldung in der Konsole ausgeben, auch wenn ich den Fehler erhalte. Gibt es einen besseren Weg, dies zu tun?

Einfaches Beispiel:

%Vor%     
Jason 09.07.2009, 13:28
quelle

3 Antworten

22

Wie vorgeschlagen, können Sie respondsToSelector: Meldung für NSObject deklariert. Der bereitgestellte Code wäre wie

%Vor%     
notnoop 09.07.2009, 13:38
quelle
5

Sehen Sie sich die AntwortToSelector-Methode von NSObject an

    
drvdijk 09.07.2009 13:31
quelle
1

Eine nette generische Kategorie in Ihrem Code ist:

%Vor%

Und dann können Sie verwenden:

%Vor%     
Peter N Lewis 10.07.2009 02:44
quelle

Tags und Links