2016-05-18 13 views
0

これはAnimate ImageView from alpha 0 to 1のフォローアップです。ImageButtonを非表示にする方法

ユーザーがXを行ったときにアニメーション表示し、次にYを実行したときにアニメーション表示するIm​​ageButtonがあります。アニメーションビューが正常に動作しています。しかし、視界からのアニメーション化は機能しません。実際にはアニメーションが起こるという点でそれは働いています。しかし、ボタンが見えなくなった後は、VISIBLEとしてポップバックします。だから私はこのコードを使用する

AlphaAnimation animation1 = new AlphaAnimation(0.9f, 0.0f); 
     animation1.setDuration(5000); 
     animation1.setStartOffset(1000); 
     animation1.setFillAfter(true); 
     animation1.setAnimationListener(new Animation.AnimationListener() { 
      @Override 
      public void onAnimationStart(Animation animation) { 
       GVLog.d(TAG,"MAKE INVISIBLE onAnimationStart: %s",tokenBtn.getVisibility()); 
      } 

      @Override 
      public void onAnimationRepeat(Animation animation) { 
       GVLog.d(TAG,"MAKE INVISIBLE onAnimationRepeat: %s",tokenBtn.getVisibility()); 
      } 

      @Override 
      public void onAnimationEnd(Animation animation) { 
       tokenBtn.setVisibility(View.INVISIBLE); 
       GVLog.d(TAG,"MAKE INVISIBLE onAnimationEnd: %s",tokenBtn.getVisibility()); 

      } 
     }); 
     tokenBtn.startAnimation(animation1); 

しかし、ImageButtonを非表示にする呼び出しは有効ではありません。それで、ImageButtonが見えないようにするにはどうしたらいいですか?

+0

http://stackoverflow.com/questions/7173890/how-to-animate-setvisibility-for-an-imagebutton-on-android –

+0

私がのImageButtonの画像があることを追加する必要があります表示されますそれ自体はアニメーションGIFです。 –

答えて

0

このようにしてください。これらのコードは常に自分のアプリケーションで動作します。

AlphaAnimation animation1 = new AlphaAnimation(1, 0); 
animation1.setDuration(1000); 

tokenBtn.startAnimation(animation1); 
tokenBtn.setVisibility(View.INVISIBLE); 
+0

あなたの提案は 'onAnimationStart'の中に入れたときと同じように動作します。そのアプローチの問題は、画像がGIFである場合、消えていくにつれてアニメーションが停止することです。 –

関連する問題