这种方法有什么问题?
- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame {
[activityIndicator stopAnimation:self];
}
我想停止循环进度指示器(activityIndicator
)。但是- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame
有问题。我正在编写mac osx而不是iOS。我从代表那里听到了什么,这是什么意思?
答案 0 :(得分:1)
检查以确保您的UIWebView已设置其委托。设置委托基本上是告诉程序你想要处理事件的人(比如点击,手势,或者在这种情况下,加载webView)。因此,当一个事件被触发时,它将通知代理人并且代理人可以处理它。也许如果你发布更多的代码会有所帮助,但我会检查你的UIWebView的声明。确保在分配并初始化之后,将其委托设置为self(假设此方法在同一个类中),如下所示:
UIWebView *myWebView = [[UIWebView alloc] init];
[myWebView setDelegate:self];
如果您尚未设置委托,则会触发事件,并且没有人接收它们来处理它们。您正在使用的方法是等待任何webView发送的特定事件。当它发送一个事件消息时,它作为参数传递触发的webView。在任何情况下,请输入日志语句以确保您输入的方法。这将告诉您它是否正在接收事件消息。
- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame {
NSLog(@"Did finish loading...");
[activityIndicator stopAnimation:self];
}
注意:这是根据iOS体验,但也适用于Mac OS。如果方法被调用,请告诉我你的日志结果是什么。