swift - 在修复屏幕坐标上动画时转换UIImageView
我有一个UIImageView对象,它位于屏幕全屏中央。我制作了一个动画,以相同的代码执行缩放和翻译。这里是源代码:swift - 在修复屏幕坐标上动画时转换UIImageView
UIView.animate(withDuration: 1.0, animations: { let originalTransform = self.idImageView.transform
let scaledTransform = originalTransform.scaledBy(x: 0.2, y: 0.2)
let scaledAndTranslatedTransform = scaledTransform.translatedBy(x: 100, y: 100)
self.idImageView.transform = scaledAndTranslatedTransform
}, completion: { (finished) in
self.animationCompeletedSuccessfully(finished)
})
我希望我的UIImageView举动统筹的X = 100和Y = 100但翻译100点相对于它的中心移动。我怎样才能把它翻译成窗口坐标系? Apple Documentation of traslatedBy(x: , y:) 我已阅读这一个,但不能清楚地了解有关合作ordiante系统
回答:
比方说,你imageview
中心有x
,y
坐标和width
,height
。 你想要的目的地:destinationX
,destinationY
你的翻译是:
- 用x:
destinationX - x + width/2
- 由y:
destinationY - y + height/2
请记住,如果你做的规模,你width
和height
应该乘以scaleRatio
以上是 swift - 在修复屏幕坐标上动画时转换UIImageView 的全部内容, 来源链接: utcz.com/qa/259908.html