Estoy usando un GridView. Cuatro elementos en una columna. Cada elemento se compone del siguiente diseño:GridView: a veces las filas están alineadas en la parte superior, ¡a veces están alineadas con el fondo!
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:layout_width="32dip"
android:layout_height="32dip"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="11dip"
android:paddingTop="2dip" />
</LinearLayout>
De modo que cada elemento es una imagen pequeña con un poco de texto debajo. El diseño funciona muy bien en el primer pase. Sin embargo, si el texto de un elemento es largo, se ajusta a dos líneas. Esto funciona bien, hasta que lo desplace hacia adentro y fuera de la vista. Por defecto, todas las imágenes en una fila están alineadas en la parte superior. Cuando se desplaza una fila fuera de la pantalla, luego de vuelta a la pantalla, verá que la fila de alguna manera se alinea con el fondo. Parece que:
primer diseño:
[image] [image] [image]
[text] [text] [text
wrap]
así que aunque el tercer elemento tiene 2 líneas de texto, las tapas están alineados, que es perfecto. Si desplazo esta fila fuera de la pantalla, y luego de nuevo, se ve así:
[image]
[image] [image] [text
[text] [text] wrap]
por lo que la fila se alinea en el botón inferior aquí. No estoy seguro de si esto es un error en GridView, o si hay alguna manera de controlar el diseño para alinear siempre las filas. Intenté establecer la gravedad del diseño del elemento como "superior", no es bueno. Tampoco parece haber ningún ajuste exclusivo para GridView para controlar esto. ¿Algunas ideas?
Gracias
Todo lo que puedo pensar en que hacer por ahora es añadir un espacio en blanco para todas las cadenas a ser igual a la longitud de la cadena más larga de mi conjunto de datos. Dado que la fuente es monoespaciada (creo), entonces todo debería alinearse de nuevo de forma correcta. ¡Esto es una locura! – user291701
por favor comparte la ans si ya has encontrado. – PiyushMishra
@ user291701 ¿Alguna vez encontró una respuesta a esto, estoy luchando con él mismo –