J'ai un TextView
dans mon application. Je veux aligner le texte qu'il contient sur la droite. J'ai essayé d'ajouter :
android:gravity="right"
Mais ça ne marche pas pour moi.
Qu'est-ce que je pourrais faire de mal ?
J'ai un TextView
dans mon application. Je veux aligner le texte qu'il contient sur la droite. J'ai essayé d'ajouter :
android:gravity="right"
Mais ça ne marche pas pour moi.
Qu'est-ce que je pourrais faire de mal ?
En général, android:gravity="right"
est différent de android:layout_gravity="right"
.
La première affecte la position du texte lui-même dans la vue, donc si vous voulez qu'il soit aligné à droite, alors layout_width=
devrait être soit "fill_parent"
o "match_parent"
.
La seconde affecte la position de la vue à l'intérieur de son parent, en d'autres termes, elle aligne l'objet lui-même (boîte d'édition ou vue de texte) à l'intérieur de la vue parent.
La meilleure solution est celle qui est la plus simple, et celle qui modifie le moins le comportement de votre code. .
Et si vous pouviez résoudre ce problème seulement avec 2 propriétés sur votre TextView
?
Au lieu de devoir changer votre LinearLayout
Des propriétés qui peuvent peut-être modifier le comportement de LinearLayout
des enfants ?
En utilisant cette méthode, vous n'avez pas besoin de modifier LinearLayout
et son comportement, il vous suffit d'ajouter les deux propriétés suivantes à votre cible TextView
:
android:gravity="right"
android:textAlignment="gravity"
Qu'est-ce qui serait mieux de changer seulement votre cible pour résoudre votre solution au lieu d'avoir une chance de causer un autre problème dans le futur, en modifiant votre père cible ? pensez-y :)
Je reçois une erreur disant qu'aucun identifiant de ressource n'a été trouvé pour la ressource 'textAlignment' dans le paquet Android.
Vous avez la certitude d'accéder à une TextView
propriétés ? - Vous pouvez vérifier la propriété de la référence ici : developer.Android.com/reference/Android/view/
TextAlignment a été ajouté au niveau 17 de l'API (Android 4.2). Votre émulateur/appareil devra fonctionner avec la version 4.2+ pour que cela fonctionne.
android:layout_gravity
est utilisé pour aligner la vue du texte par rapport à la disposition parent. android:gravity
est utilisé pour aligner le texte à l'intérieur de la vue texte.
Êtes-vous sûr d'essayer d'aligner le texte à l'intérieur de la vue de texte vers la droite ou voulez-vous déplacer la vue de texte elle-même vers la droite par rapport à la disposition parent ou essayez-vous d'obtenir les deux ?
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.