如何在WebView加载完成后运行代码。

时间:2012-07-12 16:23:16

标签: iphone ios xcode uiwebview

我的应用程序中有2个WebView。一个正在加载YouTube视频,另一个正在加载事件日历。我想显示一个自定义的“正在加载”图像,直到Web视图中的数据加载完毕。

我正在尝试

while([youtubeView isLoading]){
        NSLog(@"youtubeVideo is loading");
        [loadingImage setHidden:NO];
    }
    [loadingImage setHidden:YES];

在viewDidLoad中但它不起作用。

什么是实现我想要实现的目标的最好方法?

干杯,啤酒给我。

1 个答案:

答案 0 :(得分:2)

使用以下UIWebViewDelegate方法。一旦webView完成加载就会调用它。

- (void)webViewDidFinishLoad:(UIWebView *)webView
    {
        if(youtubeView isEqual:webView)
        {
           loadingImage.hidden = YES;
        }
    }

另请注意,您的类需要符合UIWebViewDelegate,并且您的webview都应将委托设置为等于该类的对象。

@interface YourViewController : UIViewController <UIWebViewDelegate>
{
    UIWebView *youtubeView;
}
@end

创建UIWebView youtubeView

的内部方法
youtubeView.delegate = self;
啤酒?