2014-10-03 2 views
-2

Я искал связанные вопросы, но ничего не сработало для меня, поэтому я опишу свою проблему. У меня есть два класса. Позволяет называть их ClassA и RootViewController. RootViewController имеет кнопку, которая вызывает действие и делегирует его классу. Заголовок для RootController выглядит следующим образом:не может найти декларацию протокола для ''

заголовок
#import <UIKit/UIKit.h> 

@protocol RootViewControllerDelegate; 

@interface RootViewController : UIViewController <UIPageViewControllerDataSource> { 

} 

... 

@end 

@protocol RootViewControllerDelegate <NSObject> 

-(void)buttonPressed : (UIButton *) button; 

@end 

ClassA выглядит следующим образом:

#import "RootViewController.h" 

@interface RightPanelViewController : UIViewController <RootViewController> 

... 

@end 

И я получаю ошибку:. "Не удается найти декларацию протокола для„RootViewController“Как я уже сказал, Я прочитал несколько вопросов, связанных с одной и той же темой, документацию для делегатов, но я не могу понять, в чем проблема. Я был бы признателен за помощь в этом вопросе.

+0

Протокол с именем «RootViewController» отсутствует. Это «RootViewControllerDelegate». –

+0

Если вы хотите подклассифицировать RootViewController, вы делаете это как 'MyController: RootViewController'. –

ответ

0

Изменить свою линию интерфейса на

@interface RightPanelViewController : UIViewController <RootViewControllerDelegate> 

ie. имя в угловых скобках должно точно совпадать с именем в определении @protocol.

+0

Спасибо большое, вот и все, я чувствую себя немым: P. – MabraX