作为标题,如果我通过动画更改ImageView的alpha,那么我就不能通过setAlpha退回:

ImageView myImage = (ImageView) findViewById(R.id.my_image);

myImage.animate().alpha(0).withEndAction(new Runnable() {
    public void run() {
        myImage.setAlpha(100);
    }
});


动画还可以,但是在myImage的此alpha值未由setAlpha设置回零之后,它永远为零。为什么?

最佳答案

从Android文档中:


  ImageView.setAlpha(int):在API级别16中已弃用此方法。请改用setImageAlpha(int)。


我怀疑您实际上是在调用继承的方法View.setAlpha(float),该方法的值介于0和1之间。将其设置为100无效。

使用setAlpha(1.0)或将方法更改为setImageAlpha(100)

关于java - setAlpha无法在动画后恢复Alpha值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31896514/

10-12 01:40