如何改变Swift中按钮的不透明度X时间

bfrts1fy  于 2023-01-25  发布在  Swift
关注(0)|答案(2)|浏览(134)

我知道sender.alpha是操作员(它是操作员吗?请纠正我),可以改变Swift上按下按钮的不透明度,但我如何添加效果,使按钮稍微不透明0.2秒,然后恢复正常?

68bkxrlz

68bkxrlz1#

您可以使用Dispatch async After

button.alpha = 0.3
DispatchQueue.main.asyncAfter(deadline: .now() + 0.2) { self.button.alpha = 1 }
yeotifhr

yeotifhr2#

sender.layer.opacity = 0.3

刚刚尝试了盐水处理,使不透明度恢复为1,但很平滑(看起来不错):

DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
    sender.layer.opacity = 0.4
}
DispatchQueue.main.asyncAfter(deadline: .now() + 0.15) {
    sender.layer.opacity = 0.6
}
DispatchQueue.main.asyncAfter(deadline: .now() + 0.2) {
    sender.layer.opacity = 0.8
}
DispatchQueue.main.asyncAfter(deadline: .now() + 0.25) {
    sender.layer.opacity = 1
}

相关问题