У меня проблема с анимацией из CGAffineTransform ... Я хочу переместить кнопку и одновременно увеличить ее.
Но если я сделаю одну анимацию в одиночку, все будет работать довольно просто. Он увеличивает или перемещает кнопку на 50 пикселей.
Но если я вставлю обе анимации в одну и ту же анимацию, это испортится. Кнопка начинает двигаться далеко за пределами экрана и не масштабируется, как следует.
Также после перемещения кнопки. Кнопки масштабируются до правильного размера, который я ожидал, но возвращаются в исходное положение до ...
Что мне здесь не хватает?
let shape = CAShapeLayer()
//shape.path = UIBezierPath(arcCenter: CGPoint(x: 25, y: 25), radius: 30, startAngle: 0, endAngle: .pi/2, clockwise: true).cgPath
shape.lineWidth = 5
shape.strokeColor = UIColor.black.cgColor
timerButton.layer.addSublayer(shape)
UIView.animate(withDuration: 2, animations: {
self.timerButton.transform = CGAffineTransform(translationX: -50, y: 0)
//self.timerButton.transform = CGAffineTransform(scaleX: 3, y: 3)
}) { (true) in
UIView.animate(withDuration: 1, animations: {
self.timerButton.transform = CGAffineTransform(scaleX: 3, y: 3)
}) { (true) in
print("later")
}
}