如何在swift中完成imageView.startAnimating()?
我想一个简单的图像数组动画运行时,按钮被点击。下面的代码运行良好,但我希望将数组中的最后一个图像设置为之后的imageview图像。我将如何在完成时更改图像,而不是将其恢复为原始图像如何在swift中完成imageView.startAnimating()?,swift,animation,uiimageview,Swift,Animation,Uiimageview,我想一个简单的图像数组动画运行时,按钮被点击。下面的代码运行良好,但我希望将数组中的最后一个图像设置为之后的imageview图像。我将如何在完成时更改图像,而不是将其恢复为原始图像 let imageArray = [UIImage(named: "Frog-1.gif")!, UIImage(named: "Frog-2.gif")!, UIImage(named: "Frog-3.gif")!, UIImage(named: "Frog-4.gif")!] @IBOutlet var i
let imageArray = [UIImage(named: "Frog-1.gif")!, UIImage(named: "Frog-2.gif")!, UIImage(named: "Frog-3.gif")!, UIImage(named: "Frog-4.gif")!]
@IBOutlet var imageView1: UIImageView!
@IBAction func button1(sender: UIButton) {
imageView1.animationImages = imageArray
imageView1.animationDuration = 1.0
imageView1.animationRepeatCount = 1
imageView1.startAnimating()
}
在最后一个解决方案中添加#selector()
和@objc
按下按钮后,您可以延迟调用函数:
self.perform(#选择器(afterAnimation),带:nil,afterDelay:imageView1.animationDuration)
然后停止动画并将imageArray
的最后一幅图像添加到imageView
的afterAnimation
功能中:
@objc func afterAnimation() {
imageView1.stopAnimating()
imageView1.image = imageArray.last
}
明亮的工作得很好!