Ну, у меня есть эти два протокола:
@protocol ivAuthorizationProtocol <NSObject>
-(void)loginReply:(ivSession*)session;
@end
@protocol ivServerListsProtocol <NSObject>
-(void)serverListLoaded:(NSArray*)serverList;
@end
и есть класс
@interface ivClientAppDelegate : NSObject <UIApplicationDelegate>
...
@end
@implementation
...
-(void)authorizeWithLogin:(NSString*)login andPassword:(NSString*)password
{
self.login = login;
self.password = password;
// !!! delegate in the next call should conform to ivAuthorizationProtocol,
// so i get warning "class does not implement protocol ivAuthoriaztionProtocol" here
[_apiWrapper authorizeWith:login andPassword:password forDelegate:self];
}
...
@end
Я хочу поместить реализацию методов протокола в отдельные файлы (категории), чтобы не засорять основной файл реализации. Например, заголовок категории для реализации ivAuthorizationProtocol выглядит так:
#import "ivClientAppDelegate.h"
@interface ivClientAppDelegate (ivAuthorizationResponder) <ivAuthorizationProtocol>
-(void)loginReply:(ivSession*)session;
@end
Итак, вопрос - как я могу избавиться от предупреждения, которое я получаю в основном файле реализации? Как я могу сообщить компилятору, что методы, соответствующие протоколу, расположены в категориях? Заранее спасибо!