我正在尝试实现UIView
动画效果,其中目标UIView
被触发为可见的动画选项,并且,当完成时,它返回到以前的隐藏状态。
下面是我写的代码,但似乎有一个问题。因为显示动画工作完美,但当涉及到隐藏UIView
立即消失,没有故意隐藏动画效果。
我试图将options
参数更改为hideConsentView()
,但它没有改变任何东西。
我错过了什么吗?
var consentStatusView = UIView()
func showConsentStatusView() {
UIView.transition(with: consentStatusView, duration: 1.0, options: .transitionCrossDissolve, animations: {
self.consentStatusView.isHidden = false
}, completion: { (finished) in
self.hideConsentStatusView()
})
}
func hideConsentStatusView() {
UIView.transition(with: consentStatusView, duration: 1.0, options: .transitionCrossDissolve, animations: {
self.consentStatusView.isHidden = true
}, completion: nil)
}
您可以简单地使用下面的函数:
UIView.animate(withDuration: 0.3, animations: {
self.consentStatusView.alpha = 0 //If you show a view alpha = 1
}) { (finished) in
self.consentStatusView.isHidden = true //If you unHide your view isHidden = false
}