我该如何为我的UIWebView
设置代理以使用webViewDidFinishLoad
?
我该如何为我的UIWebView
设置代理以使用webViewDidFinishLoad
?
在接口文件中表明你感兴趣的内容:
@interface SomethingController : UIViewController <UIWebViewDelegate> {
然后在你的实现中,你将添加该委托方法:
- (void)webViewDidFinishLoad:(UIWebView *)webView {
// Do whatever you want here
}
显然,SomethingController 应该是您实际使用的控制器,而 UIViewController 则是您正在实现的内容。
顺便说一下,这基本上是实现任何代理的方式。
编辑
在基于窗口的应用中,假设您的 UIWebView 在您的应用委托中,您只需将其添加到代理列表中,用逗号分隔,像这样:
@interface YourAppDelegate : NSObject <UIApplicationDelegate, UIWebViewDelegate>
你需要在应用程序委托的实现中包含webViewDidFinishLoad。
编辑2
最后,你需要将你的UIWebView连接到你的控制器。通常在UIViewController的viewDidLoad
方法中执行此操作,使用以下代码:
self.yourWebView.delegate = self;
这告诉UIWebView应该将消息发送到哪里。
请参照下面的屏幕截图:
在连接inYourViewController.h
之后。
@interface inYourViewController : UIViewController<UIWebViewDelegate>
inYourViewController.m
文件中实现委托方法了。IBOutlet
与视图控制器连接后,在inYourViewController.m
文件的viewDidLoad
方法中编写以下内容。self.yourWebView.delegate=self
@interface inYourViewController : UIViewController<UIWebViewDelegate>