排除外部JavaScript从UIWebView的委托方法

问题描述:

我有委托方法一个UIWebView排除外部JavaScript从UIWebView的委托方法

webViewDidStartLoad webViewDidFinishLoad

然而,在页面上我加载它无论出于何种原因未能正确加载一个Facebook聊天成分含量(高速缓存问题?与fb问题?)它一直在打击服务器,导致我的两个代表metod反复调用(他们唯一使用的是显示和隐藏活动指示器,因此我留下了一个闪烁活动指示)

有没有办法在页面加载时停止调用这些方法,但仍然“试图”加载我无法控制的外部内容?

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

    NSLog(@" I am in Webview did start");  

    if (webView == self.myFlickView) 
    { 
     [UIApplication sharedApplication].networkActivityIndicatorVisible = YES; 

    }  


} 

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

    NSLog(@" I am in Webview did end");  

    if (webView == self.myFlickView) 
    { 
     [UIApplication sharedApplication].networkActivityIndicatorVisible = NO; 

    }  


} 

尝试在webViewDidFinishLoad中将委托设置为零。由于网站中的AJAX调用加载,委托人可能会多次被调用。所以,使用[webView setDelegate:nil]

希望它有帮助。

+0

谢谢。但是,当他们点击链接转到另一个页面时,会发生什么情况不再是活动指示器。 – Eric 2012-03-01 19:08:07