Necesita ayuda para centrar un EditText en un Layout Lineal

Estoy tratando de centrar un edittext vertical y horizontalmente en un diseño lineal, pero no está funcionando. Muy simple problema realmente.

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:background="@drawable/login"> <EditText android:layout_width="150dp" android:layout_height="wrap_content" android:background="@drawable/loginbutton" android:text="Username" android:layout_gravity="center" android:textSize="25dp" android:gravity="center_horizontal|center_vertical" android:textColor="#000000" android:layout_margin="10dp" android:id="@+id/username"> </EditText> 

Voy a intentar cambiar a un relativelayout en el tiempo medio.

3 Solutions collect form web for “Necesita ayuda para centrar un EditText en un Layout Lineal”

LinearLayout no soporta el centrado en la dirección en que apila elementos hasta donde yo sepa. A menos que el LinearLayout es crucial (que en su caso no debería ser, ya que también necesita el centrado), le recomendaría cambiar a RelativeLayout .
Con un RelativeLayout , puede establecer el atributo android:layout_centerInParent="true" en el EditText para EditText .

El uso de la gravedad afecta la gravedad del contenido de dicho elemento de la interfaz de usuario, esto significa (en este caso) que el texto dentro del EditText se centrará. Con el fin de centrar el elemento de la interfaz de usuario en sí tiene que definir layout_gravity como esta es la gravedad de un elemento de interfaz de usuario mantiene dentro de su padre. El código publicado por el OP hará el centro horizontal pero no el centro vertical.

Como alternativa, puede utilizar RelativeLayout

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/login" android:orientation="vertical" > <EditText android:id="@+id/username" android:layout_width="150dp" android:layout_height="wrap_content" android:layout_margin="10dp" android:background="@drawable/loginbutton" android:layout_centerInParent="true" android:text="Username" android:textColor="#000000" android:textSize="25dp" > </EditText> </RelativeLayout> 

Prueba esto:

  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:background="@drawable/login" android:layout_centerVertical="true" android:layout_centerInParent="true"> 
  • Configuración de la gravedad de ImageView en el centro de android mediante programación
  • El centro de gravedad RelayLayout no funciona
  • Centrar verticalmente el texto excesivo en los botones de Android
  • TextView setGravity () no funciona en java
  • Android Spinner Gravity No funciona
  • Textview dentro de RelativeLayout en la vista personalizada ¿No se aplica la gravedad correctamente?
  • La gravedad de TextView no funciona con hebreo
  • Cómo configurar textview en el centro del botón de inicio de sesión de G + en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.