2012-05-14 45 views
0

我正在動畫一系列約250幀的PNG序列。我這樣做,而不是作爲H264運行它,因爲我需要背景透明度。UIImageView startAnimating即使在NSOperation中也阻止主線程

由於某些原因,即使我加載了我的NSArray並在NSInvocationOperation中加載了startAnimating調用,UI在調用startAnimating後似乎凍結。我可以看到,當圖像被加載到數組中時,應用程序仍然響應。我不知道如何停止開始動畫阻止主線程。

謝謝!

+0

你能否證實startAnimating正從主線程叫什麼?它必須從主線程中調用。 –

+0

它不是我有它在NSInvocationOperation內部被調用,這不會啓動動畫。 – Kris

回答

0

最終切換到CoreMedia

0

重要的是您的startAnimating調用在主線程上完成 - 所有的UIKit活動都必須發生在主威脅上。你可以通過改變你的方法調用是這樣的:

[imageView performSelectorOnMainThread:@selector(startAnimating) withObject:nil waitUntilDone:NO]; 
+0

無論是否在主線程中,Delay都會發生。我把它從主線程中移出來,希望阻止它阻塞沒有工作的主線程。 – Kris

+0

您是否可以修改您的問題以闡明您正在執行的步驟的順序,何時看到主線程被阻止,以及阻止了多長時間? –

相關問題