2011-01-09 34 views
0

我該如何在不凍結UI的情況下暫停一個方法,然後在告知時繼續這個過程?可可 - 暫停方法

感謝,

凱文

+1

帶或不帶調試器? – 2011-01-09 22:27:01

+0

NSOperation。我會給你更多的信息,但我目前正在學習如何做到這一點:http://developer.apple.com/library/ios/#technotes/tn2009/tn2109.html – 2011-01-09 22:30:19

回答

3

有沒有辦法打斷任意方法的執行,以後再恢復它。

您可以將您的方法分解爲多個部分,這些部分代表您希望能夠暫停的工作單元。然後,您可以使用定時器(無論是NSTimer S或[NSObject performSelector:withObject:afterDelay:]特定暫停間隔。

你正在試圖做的可能會允許一些更具體的有益的建議在這裏什麼

更多信息。

2

有一種方法防止用戶界面停止,例如定時器,這或多或少是我們運行循環的原因(當然,這不是真的,但在你的情況下是這樣)

只需將它插入到你的函數中,一切都會奏效:

while(pauseFunction) 
{ 
    [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1f]]; 
} 

備註:Runloop的所有計劃都會繼續運行,這是用戶界面,計時器,網絡等頁數