Centrar verticalmente un texto en una fila de vista de lista

Estoy tratando de hacer una lista con un texto y una imagen para cada fila. La imagen debe estar a la derecha y el texto debe ocupar el resto de la fila. El texto debe centrarse verticalmente. Puedo hacer todo esto excepto la parte centrada. Esto es lo que tengo después de muchos intentos fallidos:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout android:id="@+id/widget71" android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android" android:gravity="center_vertical"> <TextView android:id="@android:id/text1" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginTop="6px" android:textAppearance="?android:attr/textAppearanceLarge" android:text="@+id/text1" android:layout_weight="01" android:layout_gravity="center_vertical|fill_vertical|center_horizontal|center|clip_vertical"/> <ImageView android:id="@android:id/icon" android:layout_width="30px" android:layout_height="40px" android:layout_marginTop="8px" android:layout_marginLeft="4px" android:layout_marginRight="8px" android:src="@drawable/delete" android:layout_gravity="right" /> </LinearLayout> 

No importa lo que el texto siempre se muestra en la parte superior de la fila. Ya he visto algunos informes de que esto puede suceder debido a la forma en que el xml se infla cuando se hace manualmente. Pero yo no hago eso. Lo dejo al marco.

    Utilizo un RelativeLayout que contiene un TextView y un ImageView .

    Para ambos uso el android:layout_centerVertical="true" . Funciona bien para mí.

    Añadir esto a la vista de texto

     android:gravity="center_vertical" 

    o

     android:gravity="center" 

    Usuario RelativeLayout en lugar de LinearLayout Establecer fill_parent para TextView y wrap_content para ImageView.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.