IOS,Swift,动画链接,等待主线程直到链完成

时间:2014-10-17 15:05:41

标签: ios animation swift

这个问题至少被问到我寻找答案的次数,但从未让我满意。我有一个52个子视图代表一副牌的视图。这些卡片显示在屏幕的中央,分成两叠卡片,然后合并为一个洗牌的卡片。

如果我从self.standardShuffle()拨打viewDidAppear(),在实例化卡片图片后,效果会很好。

但是,如果我连续两次调用self.standardShuffle(),则第二个调用将捕获飞行中的第一个动画,并且动画将被破坏。必须有一种方法来阻止调用线程,直到动画链完成。定时器变得太笨重,我无法将所有代码放在动画块中(无论如何它都不起作用。)

有人有真正的答案吗?请。

1 个答案:

答案 0 :(得分:5)

  

必须有一种方法来阻止调用线程

不,没有。 从不阻止。 从不

如果您认为您所看到的答案并不令人满意,则您没有仔细阅读。读它们并相信它们。 第一个动画之后,您可以轻松(并以多种不同方式)安排回叫; 是开始第二个动画的时刻。或者,创建一个连续执行两个动画的单个分组动画。

这些是您的选择 - 您的选择。如果您发现难以与代码协调,那么因为您已经错误地构建了代码。重新构建它。 使用框架,不要战斗