NSTimer破坏了我的所有动画

时间:2015-01-14 22:19:04

标签: ios uiviewcontroller autolayout nstimer uianimation

我添加了一个更新我的界面的NSTimer,主要是每秒10次信息标签。它调用一个函数将工作分派回主线程。

视图控制器还有一个滚动视图。我有一个分页系统,当用户点击与每个标签对应的标签(按钮)时,我会在滚动视图的动画中动画从一个页面移动到另一个页面。那个滚动动画刚刚停止发生 - 就好像我用动画调用scrollToRect为NO,即使我用YES调用它。

我认为,因为我正在更新我的标签,所以自动布局在背景中做了一些狡猾的事情并破坏了我的滚动视图动画。对于使用布局约束来移动视图的其他动画也会发生同样的情况。

我知道Autolayout和NSTimer存在问题。

我该怎么做才能解决这个问题?

由于

1 个答案:

答案 0 :(得分:0)

我会创建一个布尔标志,禁止来自timer方法的更新。在开始动画之前将此设置为true,并在动画完成后将其设置为false。您可能还想手动更新数据'一旦动画完成捕获任何阻止的更新。