Acabo de agregar un encabezado a mi ListView y tengo que cambiar un montón de código porque el encabezado se convierte esencialmente en la posición 0 (lo que significa que los índices de Cursor de mi CursorAdapter no se alinean con las indicaciones de la lista. por 1 ahora). ¿Por qué? Esto me parece un poco tonto.¿Hay una buena razón para que un encabezado ListView tome una posición?
La única razón por la que se me ocurre es que un desarrollador puede querer acceder al encabezado. Multa. Proporcione algo como getListView(). GetHeader().
Simplemente espere hasta que tenga que colocar sus propios encabezados de sección. Eso es una pesadilla. – Falmarri
Siempre que se refiera al Adaptador asociado a la lista, no debería tener problemas uno por uno. Agregar encabezados/pies de página ajusta su Adaptador y hace estos ajustes por usted. –
Puedo poner mis propios encabezados de sección muy bien. Con un ArrayAdapter, mis encabezados de sección son elementos reales de la lista. Con un CursorAdapter, cada elemento tiene un encabezado como parte de su Vista, pero solo se muestra para el elemento superior de cada sección. El problema con ambos enfoques es que el encabezado desaparece; por lo que podría terminar con una lista llena de elementos y no saber en qué encabezado están porque el encabezado se desplazó por la parte superior de la pantalla. Estaba experimentando con los encabezados de ListView para evitar esto, pero aparentemente también se desplazan. – Andrew