2009-05-03 48 views
3

我有我的視圖控制器內部的一些方法,用於加載爲未來的行動,我叫他們都這麼即:一個方法中執行方法無延遲

- (void) updateSongInformation { 
    artistName.text = @"Testing"; 
    [self setupEmail]; 
    [self checkStatus]; 
} 

如果我拿出最後2行, UILabel即時更新。有沒有辦法在後臺運行最後2種方法,以便用戶體驗不會被延遲?

回答

8

performSelector:withObject:afterDelay:可讓您將調用推送到稍後的runloop循環。

如果這兩個調用需要大量的時間,稍後纔會使用戶界面無響應,這可能不是您想要的。在這種情況下,您需要將操作分解爲小塊並繼續使用performSelector:withObject:afterDelay:執行下一部分或push the work onto a background thread

+0

+1,比定時器好 – 2009-05-03 22:13:22