You can animate a UIImageView
by quickly displaying images on it in a sequence using the UIImageView
's animation properties:
imageView.animationImages = [UIImage(named: "image1")!,
UIImage(named: "image2")!,
UIImage(named: "image3")!,
UIImage(named: "image4")!,
UIImage(named: "image5")!,
UIImage(named: "image6")!,
UIImage(named: "image7")!,
UIImage(named: "image8")!]
imageView.animationDuration = 0.3
imageView.animationRepeatCount = 1
The animationImages
property is an Array
of UIImages
that is run through from top to bottom when the animation is triggered.
The animationDuration
property is a Double
saying how many seconds the animation will run for.
The animationRepeatCount
property is an Int
that says how many times the animation will run.
To start and stop the animation, you can call the appropriate methods to do so:
imageView.startAnimating()
imageView.stopAnimating()
There is method isAnimating()
which returns a Boolean
value indicating whether the animation is running at a moment or not.
Please note that this's not a very efficient way to create animations: it's quite slow and resource-consuming. Consider using Layers or Sprites for better results