Почему реализация этого протокола возвращает ошибку? - PullRequest
1 голос
/ 30 марта 2012

Я пытаюсь реализовать протокол в Цели C.

@implementation UsingViewsViewController : UIViewController<UIAlertViewDelegate>

- (void)viewDidLoad
    ...

Однако XCode выдает ошибку: «Неожиданный идентификатор или» («».

Код компилируется, однако, если я уберу <UIAlertViewDelegate>.

Почему ошибка в уведомлении о протоколе?

Ответы [ 2 ]

2 голосов
/ 30 марта 2012

Вы перепутали @interface и @implementation. Попробуйте:

@interface MyClass : UIViewController <UIViewAlertDelegate>
...
@end

@implementation MyClass
...
@end

Обратите внимание, что @interface принадлежит в заголовочном файле, а @implementation - в файле .m.

1 голос
/ 30 марта 2012

Поместите <UIAlertViewDelegate> в заголовок (файл .h)

@interface UsingViewsViewController : UIViewController<UIAlertViewDelegate> {

Ваша реализация (.m) должна начинаться так:

@implementation UsingViewsViewController
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...