J'utilise overridePendingTransition lorsque mon activité est créée et que cela fonctionne bien, je peux voir que le fondu fonctionne très bien, mais lorsque j'essaie d'animer la fin de l'activité, il fait toujours la diapositive par défaut de droite à gauche.
J'ai d'abord essayé de définir l'animation de sortie lorsque je démarre l'activité comme suit:
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);
}
Ensuite, j'ai essayé de le faire quand j'ai fini l'activité aussi
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);
}
}
});
Mais aucune de ces approches n'empêchera le glissement «de droite à gauche» pour l'animation de sortie. Des idées sur ce que je fais mal?
R.anim.nothing
ressemble?finish()
méthode pour éviter les transitions dans tous les cas (bouton retour enfoncé, comme exemple):@Override public void finish() { super.finish(); overridePendingTransition(0, 0); }
Cette question a déjà répondu mais le moyen le plus efficace de mettre une animation en sortant d'une activité est de remplacer la méthode "finish ()" de l'activité associée:
la source
Je suggérerais d'utiliser la méthode isFinishing () pour configurer les animations à onPause au lieu d'appeler finish ()
la source
la source
J'ai résolu ce problème en utilisant ce type d'approche:
ouvrir avec animation:
Pour fermer avec animation:
la source
Essayez de le faire à travers un thème. Vous pouvez définir des animations d'entrée de sortie pour les activités ou l'ensemble de l'application
la source
Suite à la réponse de @schwiz, voici un remplacement d'animation pour le thème Dialog intégré, où j'ai défini des animations locales slide_up et slide_down. Mon activité spécifie le thème MyDialog afin de faire entrer et sortir ces transitions.
la source
Utilisez startActivityForResult pour démarrer votre activité enfant et dans onActivityResult () de votre activité parent:
la source