2010-08-23 16 views
5

¿Es posible tener un índice en el lado derecho de un ListView? Esto es posible en el iPhone donde se muestra el lado derecho del alfabeto. Tocar una letra en el alfabeto lleva al principio de los elementos en el ListView que comienzan con esa letra.android - índice para ListView?

¿Hay código incorporado en Android para esta funcionalidad? ¿O es algo que uno tendría que hacer de forma personalizada?

+0

Realmente no tengo una respuesta, aparte de eso sí, se tendría que construir esta costumbre, pero definitivamente creo que sería una buena cosa tener como funcionalidad incorporada. Mejor aún, algo así como la interfaz del Zune HD para revisar largas listas de música (si no lo has visto, búscalo en YouTube, es muy bueno). Básicamente, al comienzo de una sección, tienes la carta para esa sección; toca eso, y aparece una grilla del índice, y presionas uno para saltar a él. Puede ser un proyecto divertido para mí intentar ... :) – kcoppock

Respuesta

20

No hay exactamente lo que desea. Hay una cosa muy similar. En primer lugar establecer el modo de desplazamiento rápido de su ListView:

ListView.setFastScrollEnabled(true); 

próxima implementar la siguiente interfaz de su adaptador:

android.widget.SectionIndexer 

http://developer.android.com/reference/android/widget/SectionIndexer.html

De esta manera usted será capaz de desplazarse a la velocidad de su ListView con una botón de pulgar.

Si implementa SectionIndexer correctamente, podrá ver una letra del alfabeto en la que se encuentra actualmente durante el desplazamiento rápido.

+0

Gran respuesta. Esta también es "la forma de Android", por lo que debería preferirse intentar que funcione como el iPhone. – noah