带有CGAffineTransform…按钮的SWIFT问题总是发源地

问题描述 投票:0回答:1

我对CGAffineTransform中的动画有问题...我想移动按钮并同时放大按钮。

但是,如果我仅制作一个动画,一切都会很简单。它将按比例放大或将按钮移动50px。

但是如果我将两个动画都放在同一动画中,那就搞砸了。该按钮从屏幕外部开始移动,无法按比例缩放。

此外,在移动按钮之后。这些按钮会按比例放大到我期望的正确大小,但是在... ...>之前会移回原点位置

我在这里想念什么?

    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")
        }
    }

我对CGAffineTransform中的动画有问题...我想移动按钮并同时放大按钮。但是,如果我仅制作一个动画,一切都会很简单。它...

swift cgaffinetransform
1个回答
0
投票

在完成x位置的变换时,您需要更改约束以使其成为永久约束,即顶部约束,此后在完成时还需要删除x位置变换,

© www.soinside.com 2019 - 2024. All rights reserved.