ios – 使用UIViewPropertyAnimator按顺序制作UIView的alpha

ios – 使用UIViewPropertyAnimator按顺序制作UIView的alpha,第1张

概述我有一个想要在0.5秒后显示的UIView,并在0.5秒后再次隐藏,创建一个简单的动画.我的代码如下: let animation = UIViewPropertyAnimator.init(duration: 0.5, curve: .linear) { self.timerBackground.alpha = 1 let transition = UIViewP 我有一个想要在0.5秒后显示的UIVIEw,并在0.5秒后再次隐藏,创建一个简单的动画.我的代码如下:

let animation = UIVIEwPropertyAnimator.init(duration: 0.5,curve: .linear) {        self.timerBackground.Alpha = 1        let Transition = UIVIEwPropertyAnimator.init(duration: 0.5,curve: .linear) {            self.timerBackground.Alpha = 0        }        Transition.startAnimation(afterDelay: 0.5)    }    animation.startAnimation()

当我测试它时,没有任何反应.我认为这是因为它们都在同一时间运行,这意味着它们相互抵消,但这不是“afterDelay”部分应该阻止的吗?

如果我单独运行它们,即从隐藏变为可见,或者从隐藏变为可见,它可以工作,但是当我尝试按顺序运行它时,它不起作用.

我的UIVIEw不是不透明或隐藏的.

解决方法 您可以使用Timer,并在每个计时器刻度上添加出现/隐藏动画块到您的UIVIEwPropertyAnimatorobject.

这是一个代码库:

@IBOutlet weak var timerBackground: UIImageVIEw!private var timer: Timer?private var isShown = falseprivate var vIEwAnimator = UIVIEwPropertyAnimator.init(duration: 0.5,curve: .linear)overrIDe func vIEwDIDLoad() {    super.vIEwDIDLoad()    vIEwAnimator.addAnimations {        self.timerBackground.Alpha = 1    }    vIEwAnimator.startAnimation()    isShown = true    self.timer = Timer.scheduledTimer(timeInterval: 0.5,target: self,selector: #selector(self.startReversedAction),userInfo: nil,repeats: true)}func startReversedAction() {    // stop the prevIoUs animations block if it dID not have time to finish its movement    vIEwAnimator.stopAnimation(true)    vIEwAnimator.addAnimations ({        self.timerBackground.Alpha = self.isShown ? 0 : 1    })    vIEwAnimator.startAnimation()    isShown  =  !isShown}

我已经为dots jumping的dots jumping实现了非常相似的行为.

请随时查看以获取更多详细信息.

总结

以上是内存溢出为你收集整理的ios – 使用UIViewPropertyAnimator按顺序制作UIView的alpha全部内容,希望文章能够帮你解决ios – 使用UIViewPropertyAnimator按顺序制作UIView的alpha所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1000339.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存