Как подавить предупреждение Objective-C "неполная реализация класса SomeClass"? - PullRequest
1 голос
/ 12 августа 2010

У меня есть класс, который направляет много сообщений во внутренний экземпляр компонента.Таким образом, у класса есть только определение метода, но нет реализации.Как можно подавить эти предупреждения для этих динамических методов?

Обновление

Пример моего кода:

@interface SomeClass : NSObject
{
}
- (void)mssageA:(id)value1 additionalOption:(id)value2;
- (void)mssageB:(id)value1 additionalOption:(id)value2;
- (void)mssageC:(id)value1 additionalOption:(id)value2;
@end
@implementation SomeClass
- (id)forwardingTargetForSelector:(SEL)aSelector
{
    if(aSelector==@selector(mssageA:additionalOption:))     return  innerComponentInstance;
    if(aSelector==@selector(mssageB:additionalOption:))     return  innerComponentInstance;
    if(aSelector==@selector(mssageC:additionalOption:))     return  innerComponentInstance;

    return  [super forwardingTargetForSelector:aSelector];
}
@end

1 Ответ

1 голос
/ 12 августа 2010

Я думаю, что реализация протокола может выглядеть следующим образом

@protocol SomeProtocol 

@optional
- (void)mssageA:(id)value1 additionalOption:(id)value2;
- (void)mssageB:(id)value1 additionalOption:(id)value2;
- (void)mssageC:(id)value1 additionalOption:(id)value2;
@end

@interface SomeClass : NSObject <SomeProtocol>
{
}

@implementation SomeClass
- (id)forwardingTargetForSelector:(SEL)aSelector
{
    if(aSelector==@selector(mssageA:additionalOption:))     return  innerComponentInstance;
    if(aSelector==@selector(mssageB:additionalOption:))     return  innerComponentInstance;
    if(aSelector==@selector(mssageC:additionalOption:))     return  innerComponentInstance;

    return  [super forwardingTargetForSelector:aSelector];
}
@end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...