Ich verwende overridePendingTransition, wenn meine Aktivität erstellt wird und das gut funktioniert. Ich kann sehen, dass das Einblenden gut funktioniert, aber wenn ich versuche, das Ende der Aktivität zu animieren, wird immer noch die Standardfolie von rechts nach links ausgeführt.
Ich habe zuerst versucht, die Out-Animation zu definieren, wenn ich die Aktivität wie folgt starte:
Intent myIntent = new Intent(a, SkdyAlert.class);
myIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
a.startActivity(myIntent);
if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.DONUT) {
AnimationHelper.overridePendingTransition(a, R.anim.fadein, R.anim.fadeout);
}
Dann habe ich es versucht, als ich die Aktivität beendet habe
okBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
finish();
if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.DONUT) {
AnimationHelper.overridePendingTransition(activity, 0, R.anim.fadeout);
}
}
});
Keiner dieser Ansätze verhindert jedoch die Folie "von rechts nach links" für die Exit-Animation. Irgendwelche Ideen, was ich falsch mache?
android
animation
android-activity
b-ryce
quelle
quelle
R.anim.nothing
aus?finish()
Methode überschreiben , um Übergänge in allen Fällen zu vermeiden (Zurück-Taste gedrückt, als Beispiel):@Override public void finish() { super.finish(); overridePendingTransition(0, 0); }
Diese Frage wurde bereits beantwortet. Der effizienteste Weg, eine Animation beim Beenden einer Aktivität zu platzieren, besteht darin, die Methode "finish ()" der zugehörigen Aktivität zu überschreiben:
quelle
Ich würde vorschlagen, die Methode isFinishing () zu verwenden, um die Animationen bei onPause zu konfigurieren, anstatt finish () aufzurufen.
quelle
quelle
Ich habe dieses Problem mit diesem Ansatz behoben:
mit Animation öffnen:
So schließen Sie mit der Animation:
quelle
Schauen Sie sich das anhand eines Themas an. Sie können Enter-Exit-Animationen für Aktivitäten oder die gesamte Anwendung definieren
quelle
Nach der Antwort von @schwiz finden Sie hier eine Animationsüberschreibung für das integrierte Dialog-Thema, in dem ich lokale slide_up- und slide_down-Animationen definiert habe. Meine Aktivität gibt das Thema MyDialog an, damit diese Übergänge ein- und ausgehen.
quelle
Verwenden Sie startActivityForResult, um Ihre untergeordnete Aktivität und in onActivityResult () Ihrer übergeordneten Aktivität zu starten:
quelle