Ich antworte mir selbst, nachdem ich einige Nachforschungen angestellt habe. Sie benötigen zwei Dinge:
1 - Erstellen Sie eine "transparente" Aktivität, indem Sie das folgende Thema in AndroidManifest festlegen. Wenn Sie dies nicht tun, wird ein leerer Bildschirm angezeigt:
<style name="TransparentActivity" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
2. eine TranslationAnimation erstellen (oder die Animation Sie möchten) manuell, um es in die Wurzel decorView Anwendung sowie deaktivieren Sie die benutzerdefinierten Animationen sie auf 0 setzen:
overridePendingTransition(0, 0);
// Custom transition
TranslateAnimation translateAnimation = new TranslateAnimation(-translationLength, 0, 0, 0);
translateAnimation.setDuration(350);
translateAnimation.setFillAfter(true);
View rootView = getWindow().getDecorView().findViewById(android.R.id.content);
rootView.startAnimation(translateAnimation);
rootView.getLayoutParams().width = translationLength;
Wenn Sie wollen, dass die Reverse-Animation onBackPressed oder wenn Ihre Aktivität beendet:
@Override
public void finish() {
overridePendingTransition(0, 0);
TranslateAnimation translateAnimation = new TranslateAnimation(0, -translationLength, 0, 0);
translateAnimation.setDuration(350);
translateAnimation.setFillAfter(true);
translateAnimation.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
YourActivity.super.finish();
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
getWindow().getDecorView().findViewById(android.R.id.content).startAnimation(translateAnimation);
}
Warum habe ich downvoted erhalten? – moyo
Eine Lösung gefunden! Posted unten – moyo