【发布时间】:2017-07-19 11:14:10
【问题描述】:
因此,当视图加载时,我制作了一个按钮以移动到屏幕上的特定点 (CGPoint)。我还添加了一个 swipeGestureRecogniser 以使如果用户向左滑动,动画将停止并开始一个新的动画,将按钮带到不同的 CGPoint。我通过调用按钮上的removeAllAnimations() 方法来做到这一点。问题是当用户向左滑动时,按钮在没有动画的情况下完成了第一个动画。所以它不会停止并开始新的动画,而是跳到第一个动画的结尾,然后继续下一个动画。有没有办法停止第一个动画并无缝启动下一个?
这是代码:
【问题讨论】:
-
在两个动画之间添加一些延迟
-
我认为这是因为您使用的是 UIView 动画,removeAllAnimations 仅适用于 CALayer 动画。因此,如果您将这些动画添加为 CALayer,swipeLeft 手势将删除所有动画。
标签: ios swift animation uiviewanimation