Ios 快速动画到';投掷';图像到屏幕中心

Ios 快速动画到';投掷';图像到屏幕中心,ios,swift,animation,Ios,Swift,Animation,所以我今晚在玩动画,试着把我脑子里想的那个编出来。所以我把这两个UIImageView放在相对的角落里,我想让它们移到屏幕的中心(比如说,两秒钟)。我不希望动画是线性的,我希望它是一个轨迹运动。我尝试了cGraffineTransformationstruct来转换我的图像,但我不认为这是我想要的,因为转换是线性运动。我只做了几个小时的动画,我知道的不多。我知道你可以用弹簧效果来制作动画,但是我如何让图像垂直弹簧而不是水平弹簧呢 我不确定是否有一种简单的方法来创建这个动画,或者我是否必须在图像上

所以我今晚在玩动画,试着把我脑子里想的那个编出来。所以我把这两个UIImageView放在相对的角落里,我想让它们移到屏幕的中心(比如说,两秒钟)。我不希望动画是线性的,我希望它是一个轨迹运动。我尝试了
cGraffineTransformation
struct来转换我的图像,但我不认为这是我想要的,因为转换是线性运动。我只做了几个小时的动画,我知道的不多。我知道你可以用弹簧效果来制作动画,但是我如何让图像垂直弹簧而不是水平弹簧呢

我不确定是否有一种简单的方法来创建这个动画,或者我是否必须在图像上创建物理属性,并对其进行一段时间的修补。如果这些都不清楚,下面的图片可能会有所帮助(请原谅我糟糕的MS绘画技巧lol)。因此,左下角的图像是红色/橙色的路径,我希望它向上拍摄并到达中心。同样的想法也适用于右上角(绿色);正如您所看到的,我对图像离开屏幕的时间很满意


这将帮助您将imageview设置为中心动画

UIView.animate(withDuration: 1.0, animations: {

  //Your imageview
  self.imageView.center = CGPoint(x: self.view.frame.size.width/2, y: self.view.frame.size.height/2)

  self.imageView.autoresizingMask = [.flexibleWidth, .flexibleHeight]

 }, completion:nil)
UIView.animate(withDuration: 1.0, animations: {

  //Your imageview
  self.imageView.center = CGPoint(x: self.view.frame.size.width/2, y: self.view.frame.size.height/2)

  self.imageView.autoresizingMask = [.flexibleWidth, .flexibleHeight]

 }, completion:nil)