'-respondsToSelector:' не найден в протоколе (ах) - PullRequest
27 голосов
/ 17 июня 2010

Я получил это сообщение с тех пор, как начал создавать свою первую программу для iPhone несколько месяцев назад.

Я хочу проверить, реализует ли делегат данный метод. Это работает, но я получаю это предупреждение.

Как мне сделать это правильно?

Ответы [ 2 ]

99 голосов
/ 17 июня 2010

Метод respondsToSelector: объявлен в протоколе NSObject.Вы должны убедиться, что ваши пользовательские протоколы также соответствуют протоколу NSObject.Измените объявления ваших пользовательских протоколов с:

@protocol MyCustomProtocol
...
@end

на:

@protocol MyCustomProtocol <NSObject>
...
@end
3 голосов
/ 17 июня 2010

Полагаю, RespondsToSelector - это метод NSObject, и я думаю, что у вас есть что-то вроде id<MyProtocol> в качестве типа?Попробуйте NSObject*<MyProtocol>.

...