连续视图动画的iPhone性能问题

时间:2013-09-18 11:06:03

标签: iphone ios xcode ipad animation

我正在做一个iPhone应用程序,我必须在其中显示问题。现在问题的数量大约是70,在前一个问题被解答之后将逐一显示。要求是我必须像问题一样显示动画从一个不同的视角来看自我。我每次问题的间隔为3秒钟时我的动画大约70次左右,每次重复呼叫时,视图的移动速度会稍微变慢。直到20个问题才过去很难找到发生了一些错误但在此之后我们可以感受到速度的差异。

我试图在视图和动画的情况下使用UITableview,每当我在问题得到解答时删除表格并同时创建一个带有新问题的新表格。这比视图好一点但我们仍然可以感知到新问题动画后表格的速度差异。

任何建议。

编辑:当时回答问题时,表格显示在屏幕上。回答后我正在设置视图框架:

[TableView setFrame:CGRectMake(320,49, 320, 411)];

然后我必须全屏拿桌子。然后我在两秒钟后使用它:

    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:0.2];
    [TableView setFrame:CGRectMake(0,49, 320, 411)];
    [UIView commitAnimations];

然后看起来问题来自其他观点。在经过一些问题之后,这个问题的速度似乎在下降。

建议更好的方法来做同样的事情。

1 个答案:

答案 0 :(得分:0)

您可以尝试在一个动画块中为所有视图设置动画。拥有70个动画块同时运行将减慢你的应用程序,尝试在一个动画块中完成所有70个视图动画,你会看到提升。

我该怎么做?你可以说。

也许你可以创建一个单例并在那里传递所有视图动画,将它们保存在属性或其他内容中,然后通过给出[mySingleton start];命令,您可以在一个块中执行所有动画。或者你可以找到一个更好更简单的解决方案,代码是你的:)