Comment puis-je utiliser correctement l'indicateur d'intention FLAG_ACTIVITY_NO_ANIMATION
dans le fichier AndroidManifest? Je suppose que mon problème est trivial, mais je ne trouve pas de bon exemple ni de solution.
<intent-filter>
<data android:name="android.content.Intent.FLAG_ACTIVITY_NO_ANIMATION" />
</intent-filter>
Cependant, aucune erreur n'est signalée par le compliateur, mais data
n'est pas correcte. Je veux juste désactiver l'animation en cas de basculement entre les activités. Je peux utiliser getWindow().setWindowAnimations(0);
dans onCreate ou onResume plutôt mais utiliser flag est une meilleure façon, n'est-ce pas?
Je peux aussi utiliser dans le code:
Intent intent = new Intent(v.getContext(), newactivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
getContext().startActivity(intent);
Mais je souhaite utiliser cet indicateur dans le manifeste Android. Pour désactiver l'animation également en cas de retour de la deuxième activité à la première.
Réponses:
Vous pouvez créer un style,
et définissez-le comme thème de votre activité dans le manifeste:
Vous pouvez également définir un style pour spécifier des animations d'entrée et de sortie personnalisées. http://developer.android.com/reference/android/R.attr.html#windowEnterAnimation
la source
Si votre contexte est une activité, vous pouvez appeler overridePendingTransition :
Donc, par programmation:
la source
overridePendingTransition
été ajouté au niveau de l'API 5. Donc non, cela ne fonctionne pas sur "toutes" les versions d'Android mais je suppose que vous ciblez un niveau d'API plus élevé que 5.Essayez ce code,
la source
Vous pouvez également le faire dans toutes les activités dont vous ne souhaitez pas effectuer la transition:
J'aime cette approche car vous n'avez pas à vous soucier du style de votre activité.
la source
Ce n'est pas un exemple d'utilisation ou une explication de la façon d'utiliser
FLAG_ACTIVITY_NO_ANIMATION
, mais il répond comment désactiver l'Activity
animation de commutation, comme demandé dans le titre de la question:Android, comment désactiver l'effet 'wipe' lors du démarrage d'une nouvelle activité?
la source
Voici une solution one-liner qui fonctionne aussi bas que celle
minSdkVersion 14
que vous devriez insérer en vousres/styles.xml
:ainsi:
À votre santé!
la source
La ligne dans le style de thème fonctionne bien, mais cela remplace l'animation par un écran blanc. Surtout sur un téléphone plus lent - c'est vraiment ennuyeux. Donc, si vous voulez une transition instantanée, vous pouvez l'utiliser dans le style de thème:
la source
créez votre propre style en remplaçant Android: Thème
Ensuite, utilisez-le dans le manifeste comme ceci:
la source
Après avoir démarré l'intention, vous pouvez utiliser ce code:
S'il est utilisé, l'intention fonctionnera sans animations ni transitions
la source