Me gustaría implementar desplazamiento sin fin en un componente ListView de Android, que agregará nuevos elementos a la parte inferior de la vista de lista cuando se desplaza al último elemento de la lista.Implementar desplazamiento sin fin en ListView
Respuesta
implementar el onscrolllistener()
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
this.currentFirstVisibleItem = firstVisibleItem;
this.currentVisibleItemCount = visibleItemCount;
}
public void onScrollStateChanged(AbsListView view, int scrollState) {
this.currentScrollState = scrollState;
this.isScrollCompleted();
}
private void isScrollCompleted() {
if (this.currentVisibleItemCount > 0 && this.currentScrollState == SCROLL_STATE_IDLE) {
/*** In this way I detect if there's been a scroll which has completed ***/
/*** do the work for load more date! ***/
if(!isLoading){
isLoading = true;
loadMoreDAta();
}
}
}
al implementar y añadir a su oyente a vista de lista así detecta el final de la vista de lista como posición de desplazamiento fue al final de la lista acaba de obtener más datos. Y durante la carga de datos, necesita una bandera para cargar datos de una vez cuando la posición de desplazamiento llega al final. Entonces, si los datos se están cargando y durante ese tiempo se desplaza hacia arriba, desplácese hacia abajo y luego no obtendrá más datos para la duplicación.
Pruebe con OnScrollListener Sólo tiene que añadir los artículos a su ListView
en su
public void onScroll(AbsListView view,
int firstVisible, int visibleCount, int totalCount) {
// Add the items
}
}
Y, el establecimiento de su adapter.notifyDataSetChanged()
mostrará los elementos añadidos en su ListView
Acá les dejo algunos ejemplos de que la forma de integrar la onScrollListener
con su ListView
- 1. Efecto de "desplazamiento sin fin" en una tabla HTML
- 2. ¿Cómo implementar una galería sin fin en Android?
- 3. Implementar ListView en Android Widgets
- 4. NSScrollView infinite/scroll sin fin | subview reuse
- 5. ¿Cómo puedo implementar un ListView sin ListActivity? (use only Activity)
- 6. carpa sin fin
- 7. sin fin ViewPager androide
- 8. EditText pierde contenido en desplazamiento en ListView
- 9. Crear fácil desplazamiento alfabético en ListView?
- 10. Desplazamiento vertical de Android para ListView dentro Desplazamiento horizontalView
- 11. python handle XML sin fin
- 12. Implementación de un desplazamiento sin fin con Rails 3 y Jquery
- 13. Marcador jQuery horizontal sin fin
- 14. ¿La mejor manera de implementar una "página sin fin" en los rieles?
- 15. ¿Hay bucles sin fin en mal estado?
- 16. Mejorando suavidad de desplazamiento en un ListView de Android
- 17. Algoritmo para implementar desplazamiento cinético
- 18. Desplazamiento vertical de ListView de C#
- 19. ¿Cómo implementar el desplazamiento automático en DataGridView?
- 20. Desplazamiento horizontal ¿Vista interior del elemento ListView?
- 21. WPF Desplazamiento no integral de ListView
- 22. C# ListView Desactivar barra de desplazamiento horizontal
- 23. WPF ListView sin barra de desplazamiento si la altura está configurada en auto
- 24. Android: ¿EditText pierde contenido en desplazamiento en ListView?
- 25. ViewPager en un ListView: cómo bloquear el eje de desplazamiento?
- 26. bytes sin fin inesperado para un bucle
- 27. Cambio clave de la matriz sin fin
- 28. Agregar viewpager como encabezado de desplazamiento en listview
- 29. Implementar en iPhone sin ejecutar
- 30. ¿Cómo implementar pestañas con desplazamiento horizontal?
Hai, u puede decirme cómo agregar datos cuando el rollo llega a la parte inferior de la página .en gridview wise.i estoy tratando esto durante 2 weeks.can u ayudar – ManiTeja
añada datos en su lista o lista de arrays o matriz que haya pasado a su adaptador para la vista de cuadrícula y llame a notifyDataSetChanged() del adaptador después de agregar los datos para actualizar la vista de cuadrícula. – Pratik
para evitar que se invoque isScrollCompleted varias veces, he ajustado el método para usar un umbral, es decir, solo si ese número de elementos está visible. public void onScrollStateChanged (Vista AbsListView, int scrollState) { this.currentScrollState = scrollState; if ((jobAdapter.getCount() - (currentFirstVisibleItem + currentVisibleItemCount)) <= umbral) { this.isScrollCompleted(); } } – Ajibola