This is a companion discussion topic for the original entry at https://www.raywenderlich.com/9051-beginning-ios-animations/lessons/13
This is a companion discussion topic for the original entry at https://www.raywenderlich.com/9051-beginning-ios-animations/lessons/13
What鈥檚 the purpose of creating a temporary view to slide in for the animation? It seems to work fine if you just animate the background image transition in method fade inside of a UIView.animate. I can鈥檛 tell the difference when you do this:
bgImageView.center.y += 20
let origSize = bgImageView.bounds.width
bgImageView.bounds.size.width = bgImageView.bounds.width * 1.3
UIView.animate(withDuration: 0.5, delay: 0, options: .curveEaseIn, animations: {
self.bgImageView.image = toImage
self.bgImageView.bounds.size.width = origSize
self.bgImageView.center.y -= 20
}) { (_) in
}
The temp view lets us create a crossfade effect. In your example, you only see one image at a time. If you use the temp view like we do in the video, the background images will both be partially visible in the middle of the animation:
To see that in action, try making the animation longer, or do a screen recording and step through the frames of the video.