###Android studioアニメーション完了待ちについて
Android studioでは、アニメーション完了待ちまで他の処理を出来なくするといった機能はないのでしょうか?
私の情報収集能力が低いだけなのかもしれませんが、検索しても引っかかりませんでした。
例えばAlphaAnimation
の場合
java
1AlphaAnimation alpha = new AlphaAnimation(1.0f,0.0f);//完全に透過0が黒 2 alpha.setFillEnabled(true); 3 alpha.setFillAfter(true); 4 alpha.setDuration(3000);
と、こうなりますが、ここに何か追加すればアニメーション完了待ちを実現できるのでしょうか?
追記
回答ありがとうございます。こちらはアドバイスいただいた後に書いたコードです。
しかしフェードアウトのあとに、フェードインを行われています。つまり上書き?されています。
これを防ぐにはどうしたらよいのでしょうか?
指針だけでも教えていただけたらありがたいです・・・
lang
1 View decorView = getWindow().getDecorView(); 2 decorView.setBackgroundColor(Color.BLACK); 3 4 // ルートビューにIDを与えてfindViewById()で取得しても同じ 5 View rootView = ((ViewGroup) decorView).getChildAt(0); 6 rootView.setBackgroundColor(Color.WHITE); 7 8 //画面全体をフェードアウト 9 AlphaAnimation fadeout = new AlphaAnimation(1.0f, 0.0f); 10 fadeout.setFillEnabled(true); 11 fadeout.setFillAfter(true); 12 fadeout.setDuration(3000); 13 rootView.startAnimation(fadeout); 14 15 //画面全体をフェードイン 16 AlphaAnimation fadein = new AlphaAnimation(0.0f,1.0f); 17 fadein.setFillEnabled(true); 18 fadein.setFillAfter(true);//保持。 19 fadein.setDuration(3000); 20 rootView.startAnimation(fadein); 21 22 fadeout.setAnimationListener(new Animation.AnimationListener() { 23 @Override 24 public void onAnimationStart(Animation animation) { 25 //フェードアウト始まるとき操作ボタンを消す 26 } 27 28 @Override 29 public void onAnimationEnd(Animation animation) { 30 } 31 32 }); 33 34 fadein.setAnimationListener(new Animation.AnimationListener() { 35 @Override 36 public void onAnimationStart(Animation animation) { 37 } 38 39 @Override 40 public void onAnimationEnd(Animation animation) { 41 //フェードイン終わるとき操作ボタンを表す 42 } 43 44 });
回答1件
あなたの回答
tips
プレビュー