我正在使用Sparrow框架。我一直在使用SPTween和SXParticleSystem来玩精灵。问题是当我在UIScrollView中移动或调整视图大小时,那些补间和粒子只是冻结。当我结束拖动时,精灵再次移动,而不是从它冻结的地方移动但是如果它没有被冻结它们将从它们应该移动的位置移动。如何使这些精灵与其他动画UIKit元素一起制作动画。
我确实尝试使用CoreAnimation(UIView动画)并拖动滚动视图。它不冻结。有什么想法吗?
CADisplayLink OpenGL rendering breaks UIScrollView behaviour
Animation in OpenGL ES view freezes when UIScrollView is dragged on iPhone
我在上面看过这些类似的帖子,他们建议移动scrollview将runLoopMode更改为OpenGL通常不使用的那个。但我仍然不知道如何在Sparrow框架中更改runLoops。
答案 0 :(得分:0)
找到解决方案。在SPView.m行中,将NSDefaultRunLoopMode
更改为NSRunLoopCommonModes
。原因是Sparrow中的默认OpenGL渲染是使用NSDefaultRunLoopMode注册的,该模式将在某些情况下(例如UI更新)停止运行。有关详细信息,请阅读以下链接。
什么是runloops以及我们可以使用哪些模式? https://stackoverflow.com/a/7223765/467588