我試圖從網站xml中獲取數據。一切正常。異步調用目標C iphone
但UIButton保持按下狀態,直到xml數據被返回,因此如果這些與互聯網服務有關的問題,它不能被糾正,應用程序幾乎不可用。
這裏的來電:
{
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
if(!appDelegate.XMLdataArray.count > 0){
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
[appDelegate GetApps]; //function that retrieves data from Website and puts into the array - XMLdataArray.
}
XMLViewController *controller = [[XMLViewController alloc] initWithNibName:@"MedGearsApps" bundle:nil];
[self.navigationController pushViewController:controller animated:YES];
[controller release];
}
它工作正常,但我怎樣才能使視圖按鈕功能讓滯留。換句話說,我只想讓UIButton和其他UIButtons在後臺運行時起作用。
我聽說performSelectorInMainThread,但我不能把它練正確
任何幫助表示讚賞:)
是的,我確實瞭解了這些東西,但仍然有很多東西需要理解,但我會明白的,你已經把我放在了正確的方向。謝謝。我正在使用TBXML組件,所以,我想我需要寫一個簡單的瞭解它是如何工作的。 無論如何,另一個相關的問題是,如果用戶選擇關閉視圖,是否有終止selectorInBackground調用呢?在ViewDidUnload ..? – Sam 2010-04-26 14:27:49
這取決於。在簡單情況下,您可以忽略該問題並對通知部分進行編碼,以便在視圖被提前解除時不會中斷。使用異步'NSURLConnection'模式或操作隊列可以寫出更加防彈的解決方案,它們都有一個方法來取消正在進行的操作。 – zoul 2010-04-26 17:13:07
最後一段代碼非常棒,這正是我所需要的。非常感謝! – kisileno 2015-05-17 21:56:23