0

我已將activtyIndicator放在我的webView上,並將它與文件所有者關聯。我有一個tableView的RSS源,當我點擊一個單元格時,它會推到webView。就像本教程。 RSS TutorialactivityIndi​​cator not 012aring

但是,當webView開始加載時,根本沒有出現activityIndicator。我webView文件爲activityIndicator的代碼如下:

-(void)webViewDidStartLoad:(UIWebView *)webView { 
    [activityIndicator startAnimating]; 
    activityIndicator.hidden = NO; 
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES]; 
} 

-(void)webViewDidFinishLoad:(UIWebView *)webView { 
    [activityIndicator stopAnimating]; 
    activityIndicator.hidden = YES; 
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:FALSE]; 
} 

任何想法的傢伙?

謝謝。

+0

您是否真的將UIActivityIndi​​catorView作爲UIWebView的子視圖添加?你設置了UIActivityIndi​​catorView的框架嗎?也許創建一個像CGREctMake(0.0f,0.0f,32.0f,32.0f)的框架; activityIndi​​catorView.center = webView.center;' –

+0

@Wolfgang Schreurs:我沒有添加'activityIndi​​cator'作爲子視圖。剛剛在IB中放置了一個普通的「activityIndi​​cator」。它適用於我的其他文件,但由於某種原因不適用。 –

回答

2

最常見的錯誤是你忘了設置web視圖的委託:[theWebView setDelegate: self];

你做了嗎?或者,如果您將任何NSLog()放入您的webViewDidStartLoad,您是否看到輸出?

+0

我已經連接IB中的'webView'委託作爲引用插座。另外,我的'NSLog()'也輸出。很奇怪,它沒有出現,因爲它在我的其他頁面上。你有更多的想法嗎?謝謝。 –

+0

因此,您可以在狀態欄(左上角)看到網絡活動指示符,但不能看到您的自定義activityIndi​​catorView,對不對? – phi

+0

是的,狀態欄上的網絡活動指示器正在旋轉。我已經在它上面放置了一個'UILabel',它在加載時顯示,當它停止加載時消失。然而,'activityIndi​​cator'只是坐在那裏,並不旋轉。我已經檢查過我是否已將它連接到IB的文件所有者。很奇怪。謝謝。 –

1

將您的子視圖放在前面。 [self bringSubViewToFront:activityindicator];

+0

不幸的是,我的'activityIndi​​cator'不在子視圖中。謝謝。 –

1

我有同樣的問題,(在我的UIWebView之上有一個UIActivityIndi​​cator),並且看不到活動指示器。這就是我所做的:

將活動指示器放在uiwebview之後,最初隱藏uiwebview,然後在加載時顯示活動指示器。加載完成後,隱藏微調器並顯示uiwebview。

- (void)webViewDidStartLoad:(UIWebView *)webView 
{ 
    [spinner startAnimating]; 
    [spinner setHidden:FALSE]; 
    [loadButton setHidden:TRUE]; 
} 

- (void)webViewDidFinishLoad:(UIWebView *)webView 
{ 
    [spinner stopAnimating]; 
    [myWebView setHidden:FALSE]; 
} 
相關問題