【问题标题】:setAlpha not restore alpha value after animationsetAlpha 动画后不恢复 alpha 值
【发布时间】:2015-11-01 00:10:29
【问题描述】:

作为标题,如果我通过动画更改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 设置后,它永远为零。为什么?

【问题讨论】:

  • @MHP 不,无论值如何,都不起作用。

标签: java android imageview android-animation alpha


【解决方案1】:

来自 Android 文档:

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

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

要么使用setAlpha(1.0),要么将方法更改为setImageAlpha(100)

【讨论】:

  • 不,这两种解决方案都不起作用。唯一一个似乎使用 0 时间的动画:'ImageView.animate().alpha(1).setDuration(0)'
猜你喜欢
  • 1970-01-01
  • 2012-06-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多