2011-08-09 16 views
0

我有一個設置與三個不同的UIWebViews加載數據從互聯網。他們完成所花費的時間並不相同,他們所完成的順序也是不同的。幾個UIWebView和一個單獨的活動微調框架

他們開始他們的裝載是這樣的(單獨的線程...):

- (void)update { 
    [spinner startAnimating]; 
    [self performSelectorInBackground:@selector(webView1) withObject:nil]; 
    [self performSelectorInBackground:@selector(webView2) withObject:nil]; 
    [self performSelectorInBackground:@selector(webView3) withObject:nil]; 
} 

當第一個完成停止微調:

- (void)webViewDidFinishLoad:(UIWebView *)webView { 
    [spinner stopAnimating]; 
} 

我想微調器當所有三個UIWebViews完成加載後停止。我如何以簡單的方式管理它?

回答

0

該做的工作(那種...)

- (void)webViewDidFinishLoad:(UIWebView *)webView { 
    if (!webViewOne.loading && !webViewTwo.loading && !webViewThree.loading) 
     [spinner stopAnimating]; 
} 

但一些幾次三個網頁視圖已完成加載之前微調停止。我猜是因爲我的一些應該啓動webviews的過程還沒有啓動webview。因此,if語句可能是真的,如果一個進程比另一個慢得多......嗯,我需要檢查一下,我的進程沒有運行。有任何想法嗎?

0

是這樣的?

- (void)webViewDidFinishLoad:(UIWebView *)webView { 
     end = YES; 
     for (int i = 0 ; i < 3 ; i ++) 
     if (webViews[i].loading) 
      end = NO; 

     if (end) 
      [spinner stopAnimating]; 
    } 
+0

不,我無法使用我的WebViews。不管怎麼說,還是要謝謝你 :) – user872661

相關問題