Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


RelativeLayout centro vertical

Quiero hacer un diseño de fila de lista. Este diseño tiene una vista de imagen en la parte superior izquierda, una vista de texto junto a la vista de imagen y una vista de imagen en la parte superior derecha. Quiero que todos ellos sean centro vertical.

<RelativeLayout android:layout_width="fill_parent" android:layout_height="100dp" android:gravity="center_vertical" > <ImageView android:id="@+id/icon" android:layout_width="50dp" android:layout_height="50dp" android:layout_gravity="center_vertical" /> <TextView android:id="@+id/func_text" android:layout_toRightOf="@id/icon" android:layout_width="wrap_content" android:layout_height="100dp" android:layout_gravity="center_vertical" /> <ImageView android:layout_width="50dp" android:layout_height="50dp" android:layout_alignParentRight="true" android:layout_gravity="center_vertical" android:src="@drawable/arrow" /> </RelativeLayout> 

También traté de añadir android:layout_centerVertical="true" a la vista de texto, pero el resultado es la alineación de la vista de texto con los dos imageview. He intentado esto en android 4.2 emulador. ¿Alguien podría ayudarme con esto?

  • ¿Cómo puedo hacer que `View` llene un` RelativeLayout`?
  • ¿Cómo evitar la vista superpuesta en el diseño relativo en android?
  • Android Error: Debe proporcionar el atributo layout_width
  • "FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS" afecta a getRootView (). GetHeight ()
  • ¿Por qué mi diseño relativo ocupa el ancho de pantalla completa?
  • Las dependencias circulares no pueden existir en RelativeLayout, android?
  • RelativeLayout dentro de ScrollView con allignParentBottom
  • Android: Uso de alignBaseline para una imagen que sigue al texto
  • 7 Solutions collect form web for “RelativeLayout centro vertical”

    He editado tu diseño. Compruebe este código ahora.

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#33B5E5" android:padding="5dp" > <ImageView android:id="@+id/icon" android:layout_width="50dp" android:layout_height="50dp" android:layout_alignParentLeft="true" android:layout_centerInParent="true" android:background="@android:drawable/ic_lock_lock" /> <TextView android:id="@+id/func_text" android:layout_width="wrap_content" android:layout_height="100dp" android:layout_gravity="center_vertical" android:layout_toRightOf="@+id/icon" android:gravity="center" android:padding="5dp" android:text="This is my test string............" android:textColor="#FFFFFF" /> <ImageView android:layout_width="50dp" android:layout_height="50dp" android:layout_alignParentRight="true" android:layout_centerInParent="true" android:layout_gravity="center_vertical" android:src="@android:drawable/ic_media_next" /> </RelativeLayout> 

    utilizar

      android:layout_centerVertical="true" 

    Para mí, tuve que eliminar

     <item name="android:gravity">center_vertical</item> 

    Desde RelativeLayout , para que la configuración de los niños funcione:

     <item name="android:layout_centerVertical">true</item> 

    Trate de alinear la parte superior e inferior de la vista de texto con uno de los iconos, esto hará que la vista de texto comparta la misma altura que ellos, y luego establezca la gravity en center_vertical para que el texto dentro del texto vea el centro verticalmente.

     <TextView android:id="@+id/func_text" android:layout_toRightOf="@id/icon" android:layout_alignTop="@id/icon" android:layout_alignBottom="@id/icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_vertical" /> 

    Si la altura de la vista / width = wrap_content -> use:

     android:layout_centerHorizontal="true" android:layout_centerVertical="true" 

    Si la altura de la vista / width = match_parent -> use:

     android:gravity="center_vertical|center_horizontal" 

    Esto está funcionando para mí.

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/rell_main_bg" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#096d74" > <ImageView android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_centerVertical="true" android:layout_centerHorizontal="true" android:src="@drawable/img_logo_large" android:contentDescription="@null" /> </RelativeLayout> 

    Esto quizás porque la vista de texto es demasiado alta. Cambiar android: layout_height de la textview a wrap_content o usar

     android:gravity="center_vertical" 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.