动画时查看Alpha不更新

时间:2018-12-04 12:38:45

标签: android android-animation alpha-transparency

在画布上绘制某些视图的Alpha后,我想为其设置动画。 没有动画,我的代码有效。

override fun onDraw(canvas: Canvas?) {
    super.onDraw(canvas)
    imgDot!!.alpha = 1f //initial value was 0f
    imgShadow!!.alpha = 1f
    ...

如果我将视图的Alpha设置为1f,则它应显示为可见。但是问题是当我想像下面那样为视图的Alpha设置动画时,它不起作用。不仅动画,甚至动画都不可见。

imgShadow!!.animate().setDuration(1000).alpha(1f)

默认情况下,视图是可见的。我只在初始化时将其alpha更改为零。 我还尝试在onGlobalLayout()之后为视图设置动画,但仍然无法正常工作。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

在onWindowFocusChanged函数中为视图添加动画

public void onWindowFocusChanged(boolean hasFocus) {
        if(hasFocus){
             imgShadow!!.animate().setDuration(1000).alpha(1f)
        }
}