Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cuántos elementos puede almacenar un ListView?

Soy nuevo en la programación de Android. Me pregunto cuántos elementos puede almacenar un ListView? Busco en documentos pero no hablan de esto. ¿Qué pasa si pongo un montón (tal vez 10k) elementos en un ListAdapter, afectará a la actuación?

Saludos, MK.

  • Android cómo poner un cuadro de diálogo después de presionar un botón de nuevo
  • Androide. Proveedor de contenido o base de datos?
  • Cómo configurar la altura de gridview programáticamente android
  • RxJava y datos almacenados en caché
  • Android TextWatcher.afterTextChanged vs TextWatcher.onTextChanged
  • RunOnUiThread vs Looper.getMainLooper (). Publicar en Android
  • La mejor práctica para usar Sprites en un juego usando AndEngine GLES2
  • Creación del emulador Galaxy S4
  • ¿Cómo puedo iniciar una nueva actividad de Android con una cadena?
  • Buggy ListView me hace triste
  • Desplazamiento automático en ExpandableListView
  • Agrega el repositorio de maven a build.gradle
  • 5 Solutions collect form web for “¿Cuántos elementos puede almacenar un ListView?”

    El ListView está virtualizado en Android. En términos prácticos, eso significa que no hay límite real para el número de elementos dentro de él. Puedes poner millones de filas dentro de la lista y solo asignará memoria para las que estén visible (o unas cuantas más).

    Echa un vistazo a las docenas de tutoriales sobre la escritura de una clase de adaptador personalizado para un AdapterView (ListView amplía eso). También consulta la sesión de Google I / O 2010 en ListViews; Es realmente útil: aquí

    No hay límite, ya que ListView sólo procesa los elementos cuando entran en la vista, por lo que sólo se preocupa por los datos de ListView cuando se trata de procesar el elemento (aunque necesita saber la cantidad de elementos para representar la barra de desplazamiento correctamente)

    El video de Google IO realmente es ideal para aprender sobre ListView http://www.youtube.com/watch?v=wDBM6wVEO70

    Dicho esto, me gustaría preguntar si se debe cargar que muchos, como claramente el usuario no puede mirar a todos y desplazarse alrededor de un ListView con que muchos elementos será muy tedioso. Si fuera yo, haría algunas preguntas:

    • ¿La lista necesita mostrarles TODOS inicialmente? ¿Puede simplemente mostrar el conjunto más relevante? El más cercano / más grande / más pequeño / mejor / etc
    • En lugar de cargarlos todos a la vez, ¿puede cargar bloques en las páginas de los elementos? Así, por ejemplo, cargar 10-100 inicialmente, y cuando el usuario llega a la parte inferior mostrar "Cargando más …" con un icono de progreso de hilado, y tirar más, entonces el usuario puede elegir cuántos para cargar, y cuánto Desplazamiento que están preparados para hacer
    • ¿Debe usted estar construyendo una interfaz de usuario para filtrar los elementos por lo que nunca hay una necesidad de mirar a 10.000?

    Más sobre ListView http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/ http://developer.android.com/guide/topics/ui/binding.html http: // http://Www.androidguys.com/2008/07/14/fancy-listviews-part-one/

    Integer.MAX_VALUE ya que la mayoría de sus funciones se romperán ya que dependen de la int position .

    He creado un ListView y utilizado Integer.MAX_VALUE como el número devuelto al adaptador para el número de elementos en la lista. Esto no tuvo ningún efecto en el rendimiento del ListView, a pesar de que tenía cerca de 2 mil millones de elementos.

    Creo que 10k funcionará: P

    Mira mi respuesta aquí para ver en detalle lo que quiero decir: ¿Cómo crear un ListView cerrado (circular)?

    Tiene un límite de memoria (que es específico del dispositivo). Mientras no se agota el límite de memoria, puede almacenar tantos elementos como desee. Existen herramientas ADT que puede utilizar para supervisar la cantidad de memoria que está utilizando su aplicación en cualquier momento.

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