如何在swift中完成imageView.startAnimating()?

如何在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

我想一个简单的图像数组动画运行时,按钮被点击。下面的代码运行良好,但我希望将数组中的最后一个图像设置为之后的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 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
}

明亮的工作得很好!