2009-12-23 27 views
0

我正試圖在iPhone應用程序中處理activityIndi​​cator。UIactivityindicator在我的項目中不起作用

但它根本不起作用。

在我的項目裏面我有一個UISearchbar。

當人們放入關鍵字並單擊搜索結果時,會在UIWEbview中顯示字符串。

我真的希望活動指示器在等待數據時顯示和動畫,在數據加載時停止。

下面是一些代碼的使用:

@implementation myFirstappController 
@synthesize myWebview, activityIndicator; 


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


[UIApplication sharedApplication].networkActivityIndicatorVisible = YES; 
[activityIndicator startAnimating]; 
} 

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

[UIApplication sharedApplication].networkActivityIndicatorVisible = NO; 
[activityIndicator stopAnimating]; 
} 


///Here is code inside the UISearchbar 

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar { 


NSString *keywords = searchBar.text; 
NSString *infos = [NSString stringWithFormat: @"%@", keywords]; 
NSString *rs=nil; 

    if ([infos isEqualToString:@"Iloveyou"]){ 
    rs [email protected]"<span style='color:#3B5998; font-size:25px;font-weight: bold;'>I love you too </span> <span style='color:#666; font-size:18px;'> -rte,-rt </span> ; 

[myWebview loadHTMLString:rs baseURL:nil]; 
} 

- (void)dealloc { 
[myWebview release]; //<-------JUST FILL THIS LINE********************** 
[activityIndicator release]; 
[searchBar release]; 
    [super dealloc]; 
} 


@end 

回答

0

在您的例子你是「裝」的字符串,這將是瞬間的,所以(因爲iPhone結合了動畫)指示燈會永遠動畫。

您應該使用遠程URL嘗試您的代碼。

+0

嗯,但我的觀點是我不會在網上工作,我選擇UIWebview來顯示數據的原因是因爲它很容易用顏色,樣式等文字。 你覺得這裏有一些我會解決這個問題嗎? 感謝您的進一步幫助和答案。 – iGutt 2009-12-23 14:07:45

+0

我的觀點是,如果您在加載遠程URL時看到動畫,那麼您會知道它通常不會生成動畫,因爲動畫開始和停止之間的時間太快。 您可以強制系統刷新動畫,但這是私人API的一部分,現在Apple正在通過靜態分析運行二進制文件,我不推薦使用它。 如果您正在「加載」靜態HTML,加載時間總是太快以至於無法顯示動畫,所以我不打擾。 – 2009-12-23 15:07:31

+0

你能給我一些建議嗎? 如果我將這樣的應用程序處理字符串(它有能力與豐富的HTML文本/樣式等玩) 我已經使用標籤,但我很無聊,當它無法播放的東西:( Plase給我一些建議。如果你請。你這麼多。 – iGutt 2009-12-23 15:48:11