我想在画布上绘制一些视图的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((之后,我也尝试过为视图设置动画,但仍然不起作用。有什么想法吗?
在onWindowFocusChanged函数中设置视图动画
public void onWindowFocusChanged(boolean hasFocus) {
if(hasFocus){
imgShadow!!.animate().setDuration(1000).alpha(1f)
}
}