Main Activity
のアプリを持っていて、WebView
を使ってウェブページを読み込んでいます。Androidアプリオーバーライドペンディングトランジションが表示されない
ユーザがデバイスの戻るボタン(画面の戻るボタンではありません)を使用して前のWebページに戻るときにアニメーションを設定しようとしましたが、アニメーションがまったく表示されません。
下記のコードはonCreate()
の範囲外です。
注:私はoverridePendingTransition
を各行で試してみましたが、何も効果がないとコメントしました。ここで
はコードです:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.i("BACK", " Back pressed!");
//overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);
if ((keyCode == KeyEvent.KEYCODE_BACK) && this.webView.canGoBack()) {
//overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);
this.webView.goBack();
return true;
}
else{
return super.onKeyDown(keyCode, event);
}
}
@Override
public void onBackPressed(){
super.onBackPressed();
//overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);
//finish();
return;
}
私はfinish()
を使用している場合、それは代わりに帰るのアプリを終了します。ここで
slide_in_rightのxml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">
<translate
android:fromXDelta="100%"
android:toXDelta="0%"
android:duration="500" />
<alpha android:duration="500" android:fromAlpha="0.0" android:toAlpha="1.0" />
</set>
そして最後にslide_out_left:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0%"
android:toXDelta="-100%"
android:duration="500" />
<alpha android:duration="500" android:fromAlpha="1.0" android:toAlpha="0.0" />
</set>
私が行方不明ですかわからないです。私はすでに多くのトピックをチェックしていますが、私は私の問題を解決できませんでした。
ありがとうございます。
終了時にスタックに以前の 'Activity'がありますか? –
@KishoreJethavaいいえ他の 'Activity'はありません。現在のアクティビティはメインアクティビティで、ウェブページを読み込む 'WebView'を持っています。したがって、ユーザーがデバイスの戻るボタンをクリックすると、上記のアニメーションが必要になります。出来ますか? – Johny
は 'WebView'だけをアニメーションで閉じたいということですか?私の答えでは、アニメーションでアプリケーションを閉じます –