【发布时间】:2016-12-29 10:05:15
【问题描述】:
调用动画的方法
for button in self.exploreButtonsArray {
button.exploreButtonExitAnimation()
}
setupDrinkExploreButtons()
动画代码:
func exploreButtonExitAnimation() {
UIView.animateWithDuration(random, delay: 0.0, options: [], animations: {
self.center.x -= 400
}, completion: {(value: Bool) in
self.removeFromSuperview()
})
}
setupDrinkExploreButtons() 方法调用.addSubview(exploreButton) 并向容器添加一些按钮。我的动画是不是因为这些动作是异步执行的而搞砸了?
第一张图片:这是任何动画之前的第一个视图
第二张图片:不调用 setupDrinkExploreButtons() 时视图的外观。所有按钮都优雅地向左移动。
第三张图片:调用 setupDrinkExploreButtons() 时的样子
在第三张图片中,您可以看到按钮没有消失,而是似乎“动画化”以适应视图。他们没有像他们应该的那样向左移动 400 个单位,而是突然向右出现 400 个单位,然后向左移动以适应其原始位置???
【问题讨论】:
-
您可能需要检查“随机”的值以查看它们是否在适当的范围值内。
-
@Dasem 动画的问题不在于速度是随机的。我已经截取了一些屏幕截图来演示问题是如何发生的。
标签: swift animation asynchronous subview