2012-05-14 32 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

您是否可以修改您的问题以阐明您正在执行的步骤的顺序,何时看到主线程被阻止,以及阻止了多长时间? –

相关问题