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?

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" 
  • Picasso no conserva la proporción de aspecto al cambiar el tamaño de la imagen
  • Match_parent propiedad para los niños en un RelativeLayout
  • No se puede cambiar el tamaño de RelativeLayout dentro de ScrollView para llenar toda la pantalla
  • ¿Cuál es la línea de base en RelativeLayout?
  • Android: onClickListener para relativelayout
  • Layout_above de RelativeLayout da error "Ningún recurso encontrado"
  • Mostrar imagenVer superior de RelativeLayout
  • Agregar imagen de forma programada a RelativeLayout
  • ¿Por qué mi diseño relativo ocupa el ancho de pantalla completa?
  • Cómo establecer mediante programación el atributo layout_align_parent_right de un botón en Disposición relativa?
  • Android RelativeLayout alinear preocupación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.