【问题标题】:When view is removed from superview all animations are removed or not?从超级视图中删除视图时,是否删除所有动画?
【发布时间】:2012-04-27 21:11:56
【问题描述】:
  1. 我向 view_A 添加了一个无限重复的动画。
  2. 动画开始。
  3. 我将 view_A 从其父视图中换成了 view_B。
  4. view_A 上的动画停止了——我可以在我的 animationDidStop:finished: 委托方法中看出这一点——我可以看到 [view_A.layer animationForKey:theAnimationKey]nilview_A.layer.animationKeysnilview_A.layer.animations(print view_A.layer in GDB 可以显示)是空的。 (问题 1:当视图从其父视图中移除时,是否所有动画都会自动移除?)
  5. 我换回 view_A。奇怪的事情来了:我看到动画还在继续。 (问题 2:动画停止并从视图中移除后如何继续播放?)
  6. 更奇怪的是,我可以在第 5 步之后通过调用 [view_A.layer removeAnimationForKey:theAnimationKey]! 来停止动画!

【问题讨论】:

  • 在第 4 步中,布尔值是 YES 还是 NO?
  • @FaisalMemon NO.我猜这是因为从窗口中删除视图时动画被中断。但是当视图被添加回窗口时它仍在继续。很奇怪。
  • 什么是removedOnCompletion属性值,你有没有收到多个animationDidStart调用?
  • @FaisalMemon 是的。没有。
  • @FaisalMemon 我相信这是核心动画错误。请参阅下面的答案。

标签: ios core-animation


【解决方案1】:

我相信这是核心动画的一个错误。这是我的雷达:http://openradar.appspot.com/radar?id=6165852231565312

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多