我的目标是让图像在屏幕上和屏幕上显示动画 - 每次都有不同的图像。我在一个名为createImage的UIImageView之间创建了一个插座,我每次都在整个数组中更改此imageView的图像。然后将此图像设置为如下所示的动画,在屏幕中心移动,然后关闭,我有一个完成处理程序将图像保持在屏幕上。然而,当我运行代码时,会发生一些非常奇怪的事情:没有任何内容出现,但是当我旋转屏幕时,一个图像出现在中心。非常感谢你的帮助。所有建议都表示赞赏。
func animate() {
let images = ["mail.png","astronomy.png","innovation.png"]
for i in 0...2 {
createImage.image = UIImage(named: images[i])
let handlerBlock: (Bool) -> Void = {_ in
if true {
self.createImage.center.x = self.view.frame.width + 100
self.create.center.x = self.view.frame.width + 100
}
}
UIView.setAnimationRepeatAutoreverses(true)
UIView.animate(withDuration: 4.0, delay: 1, usingSpringWithDamping: 4.0, initialSpringVelocity: 2.0, options: .autoreverse, animations: ({
self.create.center.x = self.view.frame.width/2
self.createImage.center.x = self.view.frame.width/2
}), completion: handlerBlock )
}
}