Duplicata possible:
Comment centrer le texte horizontalement et verticalement dans une TextView sous Android?
J'ai un RelativeLayout
(avant c'était un LinerLayout
), qui occupe tout l'écran et je veux mettre au centre de ce Layout
, un TextView
. J'essaie de le faire avec gravity = "center"
layout_gravity = "center"
et quelques autres, mais cela ne fonctionne pas.
Quelqu'un sait comment centrer le TextView
au milieu de l'écran?
[~ # ~] modifier [~ # ~]
D'accord, je pense que j'ai mal expliqué. Je pense que le TextView
est au centre, mais ce que je veux centrer c'est le texte dans le TextView
. Puis-je faire ceci?
Si la taille de votre police est suffisamment grande, il peut sembler qu'elle n'est pas centrée, en raison du remplissage de la police.
Essayez d'utiliser les propriétés déjà mentionnées combinées avec Android:includeFontPadding
, quelque chose comme ça:
Android:gravity="center"
Android:includeFontPadding="false"
Si vous souhaitez aligner le contenu de RelativeLayout au centre, vous devez mettre Android: gravity = "center" dans les propriétés de RelativeLayout. Vous trouverez ci-dessous un exemple de code XML avec sa représentation visuelle.
Code XML:
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:gravity="center"
Android:background="@color/white">
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="My Text View"
Android:textColor="@color/black"
Android:textSize="25dp"
Android:textStyle="bold" />
</RelativeLayout>
Disposition graphique:
Essayez Android:layout_centerInParent="true"
ou Android:layout_centerHorizontal="true"
ceux-ci s'appliquent à RelativeLayout
Vous pouvez également définir la gravité = "centre" de son parent.
Android:gravity="center"
fonctionne uniquement sur RelativeLayouts. Alors essayez
<TextView
Android:id="@+id/title"
Android:layout_width="fill_parent" <!--relative Layout-->
Android:layout_height="wrap_content"
Android:gravity="center"
Android:text="Mint Payments"/>
Alternativement, tiré de n autre poste
<TextView
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:gravity="center_vertical|center_horizontal"
Android:text="@string/**yourtextstring**" />
<RelativeLayout
Android:gravity="center"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content" >
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Txt is aligned in Center" />
</RelativeLayout>
Cela devrait s'afficher au centre de l'écran avec le centre aligné. Si vous souhaitez aligner le texte, vous pouvez utiliser Android: gravity = "right" ou Android: gravity = "left"
<RelativeLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:orientation="horizontal">
<TextView
Android:id="@+id/textView"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_centerInParent="true"
Android:gravity="center"
Android:text="This is some text" />
</RelativeLayout>