私のアプリケーションでは、アクティビティを終了するボタンがありますが、すぐに閉じるボタンのアクティビティをクリックした後、アニメーションをしてからアクティビティを終了します。アクティビティを閉じるときにアニメーションを追加する - アンドロイド
これは私のコードですが、これは機能しません。
public void close(View view){
Animation fadeOut = new AlphaAnimation(1, 0);//Fadeout
fadeOut.setInterpolator(new AccelerateInterpolator()); //and this
fadeOut.setStartOffset(1000);
fadeOut.setDuration(1000);
AnimationSet animation = new AnimationSet(false); //change to false
animation.addAnimation(fadeOut);
animation.setAnimationListener(new Animation.AnimationListener(){
@Override
public void onAnimationStart(Animation arg0) {
}
@Override
public void onAnimationRepeat(Animation arg0) {
}
@Override
public void onAnimationEnd(Animation arg0) {
this.finish(); // Error: cannot resolve method
}
});
this.setAnimation(animation); // Error: cannot resolve method
}
Error: cannot resolve method
このアクティビティにアニメーションを追加するにはどうすればよいですか?
UPDATE:
私はその後2つのアニメーションfade_in.xml
とfade_out.xml
を作成し、私はoverridePendingTransition
を追加するが、それは働いていません。ここ
新しいコードである:
fade_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha
android:duration="3000"
android:fromAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:toAlpha="0.0" />
</set>
fade_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha
android:duration="3000"
android:fromAlpha="0.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:toAlpha="1.0" />
</set>
近い()
public void close(View view){
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
this.finsih()
}
私が間違っていることを教えてもらえますか?
をウルのコードを変更することができますアクティビティ?アクティビティの切り替えや終了にアニメーションを使用するには、 'overridePendingTransition(R.anim.enterAnim、R.exitAnim);' – Opiatefuchs
を参照する必要があります。https://stackoverflow.com/questions/2651360/how-to-provide-アニメーション - 呼び出し時 - 別のアクティビティ - アンドロイド – Opiatefuchs
私は他の活動を開始していません。私はちょうどこれを閉じる必要があります –