gpt4 book ai didi

ios - 如何让这个淡入淡出动画起作用?

转载 作者:行者123 更新时间:2023-11-29 01:46:42 24 4
gpt4 key购买 nike

我正在尝试设置一个简单的脉动环,它将突出显示一个按钮,以提示用户推荐的选择。我制作了简单的 fadeIn() 和 fadeOut() 函数,在 fadeOut() 中设置延迟,以便它会在 fadeIn() 完成时触发......或者至少这就是我的意图。结果是,当按下按钮时,铃声立即变为 alpha = 1,然后延迟 2 秒,然后在 2 秒内消失。一旦我有一个循环工作,我想将它放入一个循环中以在需要时保持它的运行。

如果单独执行,这两个函数都将按预期工作。我发现另一个线程处理简单的淡入或淡出,但不能同时处理两者。

我确信代码完全按照我告诉它的方式执行,但我不明白为什么它不起作用。有人可以指出我的错误吗?谢谢。

@IBOutlet weak var greenRing: UIImageView!

@IBAction func buttonPressed(sender: AnyObject)

{
fadeIn()

fadeOut()
}

func fadeIn() {

UIImageView.animateWithDuration(2.0, animations: {

self.greenRing.alpha = 1

})

}

func fadeOut() {

UIImageView.animateWithDuration(2.0, delay: 2.0, options: nil, animations: {

self.greenRing.alpha = 0

}, completion: nil)

}

override func viewDidLoad() {
super.viewDidLoad()

greenRing.alpha = 0

}

最佳答案

您可以通过一个重复的动画来达到您想要的效果。通过 .Autoreverse | .Repeat 作为 options:animateWithDuration,它会自动反转并重复淡入。

当按下按钮时,您可以通过调用greenRing.layer.removeAllAnimations()

停止动画

如果您还添加选项 UIViewAnimationOption.CurveEaseInOut,动画也可能看起来更好。所以:

.Autoreverse | .重复 | .CurveEaseInOut

关于ios - 如何让这个淡入淡出动画起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31841798/

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