我有一些基本的疑問,猜猜別人會幫我。performSelectorOnMainThread通知
請參考這個問題:Update ULabel immediately while downloading files
我一直在使用performSelectorOnMainThread
,這是調用另一大類的UpdateProgress方法,但標籤沒有更新嘗試。
但現在我已經使用像
[[NSNotificationCenter defaultCenter] postNotificationName:@"updateProgress" object:nil userInfo:nil];
通知,這似乎是調用方法,並且還更新的UILabel。儘管我的問題已解決,但我想知道爲什麼上述performSelectorOnMainThread
對我沒有幫助?任何具體原因?
它應該工作。你能在這裏發佈一些代碼嗎?你必須從某個線程和選擇器調用performSelectorOnMainThread我假設你正在調用像[someOtherClassObj updateProgress];並注意,你必須從主線程調用postNotificationName,所以我想知道你是如何調用它 – msk 2012-07-10 11:32:17
我傾向於使用[performSelectorOnMainThread ... waitUntilDone:NO];而不是「waitUntilDone:YES」;其中一條評論也提到了這一點。我注意到有時會設置爲「waitUntilDone:YES」;導致界面不更新。您是否嘗試將其設置爲「否」而不是「是」? – Zhang 2012-07-10 11:38:20