alinear el centro de texto con android

2 minutos de lectura

avatar de usuario
tsunaze

Sé que suena fácil. Necesito poner un texto en el centro, pero cuando el texto es demasiado largo, debe ir debajo, pero aún así alinearlo en el centro de mi xml.

Aquí está mi código:

 <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/showdescriptioncontenttitle"
    android:paddingTop="10dp"
    android:paddingBottom="10dp"
    android:layout_centerHorizontal="true"
>
    <TextView 
        android:id="@+id/showdescriptiontitle"
        android:text="Title"
        android:textSize="35dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
    />
</LinearLayout>

Puse paddingTop and Bottom porque necesito algo de espacio. PD: Mi código es más grande; está en un RelativeLayout.

  • Aquí no usaste ningún estilo de texto

    – Dinith

    3 de noviembre de 2019 a las 13:57

avatar de usuario
pedro.bartos

Establecer también android:gravity parámetro en TextView a center.

Para probar los efectos de diferentes parámetros de diseño, recomiendo usar un color de fondo diferente para cada elemento, para que pueda ver cómo cambia su diseño con parámetros como gravedad, diseño_gravedad u otros.

  • Gracias, funcionó, ¡solo necesito algo de tiempo para validar tu respuesta!

    -tsunaze

    6 sep 2011 a las 21:11

  • Sí, eso es verdad. Pero creo que solo si TextView tiene más de una línea. Porque con solo 1 línea de texto no completa, TextView no llenará el diseño horizontalmente

    – peter.bartos

    6 sep 2011 a las 21:19

  • Puede evitar esto configurando Android de TextView:layout_width=”fill_parent”

    – peter.bartos

    6 sep 2011 a las 21:20

  • No debe confundirse con android:layout_gravity. ¡Do! 🙂

    – Josué Pinter

    22 de abril de 2016 a las 18:57

avatar de usuario
bhargavkumar040

usar de esta manera

txt.setGravity(Gravity.CENTER);

usar de esta manera en xml

   <TextView
        android:id="@+id/myText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Time is precious, so love now."
        android:gravity="center"
        android:textSize="30dp"
        android:textColor="#fff"
        />

Puedes usar lo siguiente:

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/showdescriptioncontenttitle"
    android:paddingTop="10dp"
    android:paddingBottom="10dp">

 <TextView
        android:id="@+id/textview1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="Your text"
        android:typeface="serif" />
</LinearLayout>

El diseño debe ser relativo para que se utilice la propiedad “centro”.

avatar de usuario
Divya

agregando android:gravity="center" en su TextView hará el truco (ya sea que el diseño principal sea Relative/Linear)!

Además, debe evitar usar dp para el tamaño de fuente. Utilice sp en su lugar.

avatar de usuario
Ramandeep Singh

Simplemente agregue estas 2 líneas;

android:gravity="center_horizontal"
android:textAlignment="center"

avatar de usuario
Mubín

agregue layout_gravity y gravedad con valor central en TextView

<TextView
    android:text="welcome text"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:gravity="center"
    />

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad