如何反复更改ImageView的色调?

时间:2017-10-20 17:02:36

标签: android imageview

我正在研究Tap游戏的原型 当玩家损坏怪物时,我会制作动画。

怪物只是一个ImageView,我用这一行将ImageView的色调改为红色(在color.xml中定义)

imageView.setColorFilter(this.getResources().getColor(R.color.damage));

我的目标是使用红色调使原始ImageView和ImageView之间的ImageView“闪烁”。 但我不知道我怎么能这样做。

你能帮帮我吗? (我希望我能说清楚 - 我是法国人,我的英语不是很好)

1 个答案:

答案 0 :(得分:0)

最简单:

   public void blinkLimited(long started, long duration) {
   if(duration > System.currentTimeInMillis() - started) return;
   imageView.setColorFilter(this.getResources().getColor(R.color.damage));
   imageView.postDelayed(new Runnable(){ public void run() {
   imageView.setColorFilter(this.getResources().getColor(R.color.atention));
              imageView.postDelayed(new Runnable(){ public void run() {
                  blinkLimited(started, duration);
              }, 200);
   }, 200);
   }

执行blinkLimited(System.currentTimeInMillis(),2000)并注意到。