slide-out-animation funktioniert nicht auf zurück Taste drücken?
Ich bin mit Animationen beim betreten oder verlassen der Aktivität,die Eingabe zu einer Aktivität, animation funktioniert gut, aber die Ausfahrt animation funktioniert nicht gut. Ich start beenden-animation, wenn ich drücken Sie die zurück-Taste.Was passiert, ist es zuerst beginnen, geben Sie animation für die aktuelle Aktivität zeigen dann auch die Letzte Aktivität, was ich will, eine einfache Ausfahrt animation auf die zurück-Taste drücken.
Slide_out.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromXDelta="0%p"
android:toXDelta="-100%p" >
</translate>
Slide_in.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_longAnimTime"
android:fromXDelta="100%p"
android:toXDelta="0%p" >
</translate>
Auf Action bar zurück-Taste gedrückt
public boolean onOptionsItemSelected(MenuItem item) {
//TODO Auto-generated method stub
switch (item.getItemId()) {
case R.id.home:
finish();
overridePendingTransition(R.anim.slide_out, R.anim.slide_in);
return true;
default:
break;
}
return super.onOptionsItemSelected(item);
}
Angenommen, Sie haben eine ActivityA jetzt aus, wo Sie wollen Ihre ActivityB zu kommen und wie ActivityB verlassen. Bitte erläutere das ein wenig, damit ich helfen kann
Beginnen möchte ich B aus mit der enter-Taste animation. Ich bin in der Lage, es zu tun. aber ich möchte gehen Sie zur vorherigen Tätigkeit(A) von B mit "exit" - animation wie von Links nach rechts.Wie kann ich es tun ?
so müssen Sie ActivityB um die Folie von Links über Ihre ActivityA und auf Zurück drücken, die Sie wollen ActivityB zu schieben, genau dort, wo, wie Ihr ActivityA wird so bleiben wie es ist ?
Ja, dass ist es was ich will
schauen Sie sich meine Antwort dann
Beginnen möchte ich B aus mit der enter-Taste animation. Ich bin in der Lage, es zu tun. aber ich möchte gehen Sie zur vorherigen Tätigkeit(A) von B mit "exit" - animation wie von Links nach rechts.Wie kann ich es tun ?
so müssen Sie ActivityB um die Folie von Links über Ihre ActivityA und auf Zurück drücken, die Sie wollen ActivityB zu schieben, genau dort, wo, wie Ihr ActivityA wird so bleiben wie es ist ?
Ja, dass ist es was ich will
schauen Sie sich meine Antwort dann
InformationsquelleAutor Tarun Sharma | 2015-02-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zunächst erstellen Sie eine weitere animation, die ich.e nothing.xml in Ihrem anim Ordner
nothing.xml
hier ist Ihre slide_in.xml
und slide_out.xml
Nun Ihre NewActivity wie diese
und dann wieder zurück-Taste klicken Sie auf diese
aber Sie haben gesagt, Sie wollen ActivityA, dort zu bleiben, wie es ist??
Sorry ich habe nur eine änderung in der Anforderung.
lol nur verändern, R. anim.nichts zu R. anim.slide_in auf Ihrem zurück-Taste drücken
markieren Sie bitte meine aktualisierte code als richtige Antwort, so dass es anderen helfen kann .Danke sir für deine Zeit & Hilfe.
InformationsquelleAutor Mukesh Rana
Ich verwendet
slide_in.xml
slide_out.xml
slide_enter.xml
slide_exit.xml
Code
Früheren
Diese Antwort ist richtig. Aber
slide_out.xml
scheint irrelevant zu sein. Mitandroid:fromXDelta="0%" android:toXDelta="0%"
funktioniert ohne sichtbaren Unterschied, auch.InformationsquelleAutor Tarun Sharma
Hinzufügen einer animation im
onBackPressed
, es wird die animation beim klicken auf die Schaltfläche zurück.oops, sorry. Was über das ersetzen der Oberfläche mit rufen Sie es mit Absicht.Wie diese. Intent intent = new Intent(this, PreviousActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent);
Aber töten würde meine bisherige Tätigkeit & alle Daten verloren.
K. Dude kannst du bitte prüfen Sie mit onBackPressed () - Funktion aufrufen wie diesem. case R. id.home: onBackPressed(); return true; ich weiß nicht, es funktioniert oder nicht seine eine Vermutung.
Was möchte ich auf früheren Tätigkeit sollte beginnen, von Links
InformationsquelleAutor Remees M Syde
Ich getan habe etwas ähnliches und es funktioniert, können Sie ändern animate() mit startAnimation(your_xml), Sie haben auch für die Erwerbstätigkeit hintergrund transparent:
Diese Aktivität wird nach unten rutschen, und der MainActivity wird sichtbar im moment des Gleitens, weil der hintergrund transparent.
BEARBEITEN - Symbolleiste mit Schaltfläche zurück:
InformationsquelleAutor Djordje Tankosic
Für die Aktivität geben Sie die animation verwenden
overridePendingTransition(R.anim.slide_out, R.anim.slide_in);
imonCreate(...)
Funktion.Für die Ausfahrt animation den gleichen Anruf in
onPause(...)
.InformationsquelleAutor Rakshith Shetty