Не может принять протоколы WebKit - PullRequest
2 голосов
/ 16 июля 2010
#import <WebKit/WebKit.h>

@interface MyClass : NSObject <WebFrameLoadDelegate> {
WebView *webView;
}

не может найти объявление протокола для 'WebFrameLoadDelegate'

Ответы [ 2 ]

5 голосов
/ 16 июля 2010

WebFrameLoadDelegate - это неофициальный протокол - он объявлен как категория NSObject.Чтобы использовать его, вам необходимо объявить необходимые методы в интерфейсе класса и реализовать их.

При использовании для объявления протокола интерфейс категории не имеет соответствующей реализации.Вместо этого классы, реализующие протокол, снова объявляют методы в своих собственных интерфейсных файлах и определяют их вместе с другими методами в своих файлах реализации.

0 голосов
/ 06 марта 2012

Непосредственно из справочника разработчика Apple: https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/WebKit/Protocols/WebFrameLoadDelegate_Protocol/Reference/Reference.html#//apple_ref/doc/uid/TP40003828

... Однако, в зависимости от загружаемого содержимого, некоторые из других методов, определенных в этом протоколе, могут вызываться несколько раз. Все методы в этом протоколе являются необязательными.

Таким образом, предыдущий ответ не является правильным в том смысле, что нет необходимости реализовывать все методы.

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