我有一个按钮和一个动画。如何在函数(花卉动画)中写入如果按下按钮,动画隐藏或被删除。任何这些选项都可以。
任何人都有任何想法?
@IBAction func settings(sender: UIButton) {
settingsPlate.hidden = false
viewTwo.hidden = false
exit.hidden = false
dimmedView.backgroundColor = UIColor(red: 0.5, green: 0.5, blue: 0.5, alpha: 1.0)
dimmedView.alpha = 0.5
dimmedView.hidden = false
}
这是花卉动画。我想在这里写一个代码,如果按下按钮就会消失或隐藏。
func animateFlowerOne(){
let options = UIViewAnimationOptions.CurveEaseInOut
//Flower 1 Four
let flowers = UIImageView()
flowers.image = UIImage(named: "flower-face")
flowers.frame = CGRect(x: 70, y: 380, width: 0, height: 0)
self.view.addSubview(flowers)
UIView.animateWithDuration(500.0, delay: 200.0, options: options, animations: {
flowers.frame = CGRect(x: 70, y: 380, width: 15, height: 15)
}, completion: { animationFinished in
UIView.animateWithDuration(500.0, delay: 200.0, options: options, animations: {
flowers.frame = CGRect(x: 70, y: 380, width: 0, height: 0)
}, completion: { animationFinished in
flowers.removeFromSuperview()
self.animateFlowerOne()
})
})
}
答案 0 :(得分:4)
您需要保留对您正在设置动画的图像视图的引用(例如,在此视图控制器的实例属性中)。如果按下该按钮,则在该按钮的操作处理程序中,使用该引用与图像视图对话。您可以使用removeAllAnimations
从图像视图图层中删除当前动画,然后您可以对图像视图执行任何其他操作。
看起来你的动画可能是圆形的(重复),所以你可能还需要某种实例属性作为标志,这样动画就可以检查并停止。否则你只会永远重复。