gpt4 book ai didi

swift - 在 Swift 中重复 CGAffineTransformMakeRotation

转载 作者:行者123 更新时间:2023-11-30 10:02:19 25 4
gpt4 key购买 nike

我想用一种带有旋转的淡入/淡出来替换 View 。这是我的功能

func animateSendButton(enter: Bool)
{
let rotation: CGFloat = enter ? 180 : -180

UIView.animateWithDuration(0.5, animations: {
let transform = CGAffineTransformMakeRotation(self.DEGREES_TO_RADIANS(rotation))
self.sendImage.transform = transform
self.sendImage.layer.opacity = enter ? 0.0 : 0.87
self.sendImage2.transform = transform
self.sendImage2.layer.opacity = enter ? 0.87 : 0.0

})
}

但是,旋转仅工作一次且仅在不透明度发生变化后进行。我尝试使用 CGATransformRotate 但没有成功。

有办法重复吗?

最佳答案

尝试将转换重置为其身份:)

func animateSendButton(enter: Bool)
{
let alpha = enter ? 0.0 : 0.87
let transfrom = enter ? CGAffineTransformRotate(CGAffineTransformIdentity, DEGREES_TO_RADIANS(180)) : CGAffineTransformIdentity

UIView.animateWithDuration(0.6, delay: 0.0, options: .CurveEaseIn, animations: {
self.sendImage.transform = transform
self.sendImage.layer.opacity = alpha
self.sendImage2.transform = transform
self.sendImage2.layer.opacity = alpha

}) { (complete) in

}
}

关于swift - 在 Swift 中重复 CGAffineTransformMakeRotation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37767815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com