установить делегата для UIWebView - PullRequest
13 голосов
/ 03 декабря 2010

Как мне установить делегата для моего UIWebView для использования webViewDidFinishLoad?

Ответы [ 2 ]

23 голосов
/ 03 декабря 2010

В файле интерфейса укажите, что вас интересует:

@interface SomethingController : UIViewController <UIWebViewDelegate> {

Затем в вашей реализации вы добавите метод делегата:

- (void)webViewDidFinishLoad:(UIWebView *)webView {

    // Do whatever you want here

}

Очевидно, SomethingController должен быть вашим фактическим контроллером, а UIViewController - это то, что вы фактически реализуете.

Кстати, именно так вы реализуете любой делегат.

Редактировать

В оконном приложении, предполагая, что ваш UIWebViewнаходится в вашем делегате приложения, вы просто добавляете его в список делегатов, разделенных запятыми, например:

@interface YourAppDelegate : NSObject <UIApplicationDelegate, UIWebViewDelegate>

Вы включите webViewDidFinishLoad в реализацию делегата приложения.

Редактировать 2

Наконец, вам необходимо подключить UIWebView к контроллеру.Обычно это делается в методе viewDidLoad UIViewController со следующей строкой:

self.yourWebView.delegate = self;

Это сообщает UIWebView, куда следует отправлять сообщения.

6 голосов
/ 01 августа 2014

Следуйте скриншоту ниже

enter image description here

после подключения inYourViewController.h

@interface inYourViewController : UIViewController<UIWebViewDelegate>

Теперь вы готовы реализовать методы делегата в файле inYourViewController.m.

или

вы можете сделать то же самое из кода.

После подключения webView с контроллером представления через IBOutlet, в inYourViewController.m файле viewDidLoad Метод записи

self.yourWebView.delegate=self

В inYourViewController.h

@interface inYourViewController : UIViewController<UIWebViewDelegate>

Теперь вы готовы реализовать метод делегата webView. Спасибо

...