在将视图的Alpha值设置为零后,我试图将视图的可见性设置为GONE
:
view.animate()
.alpha(0.0f)
.setDuration(500)
.setListener(object : AnimatorListenerAdapter() {
override fun onAnimationEnd(animation: Animator) {
super.onAnimationEnd(animation)
view.visibility= GONE
}
})
但是动画显示两次。换句话说,调用view.visibility= GONE
后,我的视图再次显示和隐藏。
有什么想法吗?
答案 0 :(得分:1)
我的错误是在布局的根目录中添加android:animateLayoutChanges="true"
。它再次使我的观点动起来!
答案 1 :(得分:0)
使用此视图动画时,有一个withEndAction方法,该方法需要可运行的代码,并且使用lambda时,它看起来像这样:
view.animate()
.alpha(0.0f)
.setDuration(500).withEndAction{
view.alpha = 0.0f
view.visibility= GONE
}
尝试一下。
希望这会有所帮助。