Viewpager + FragmentpagerAdapet + Fragmentos + ListView = aplicación insanamente lenta

Tengo un viewpager en mi disposición, ese viewpager sostiene un sistema de 10 fragmentos. Cada fragmento tiene una vista de lista, que se rellena asincrónicamente. Actualmente estoy usando FragmentPagerAdapter como adaptador para el viewpager y las llamadas de API para rellenar la vista de lista se hace en onCreateView de cada fragmento. El golpe es increíblemente lento y la aplicación se cierra debido a los problemas de memoria.

¿Cómo lograr una visualización suave y responsable (viewpager + listview) como Google Play? Smooth swiping + buena caché de los elementos de la lista?

Introduzca aquí la descripción de la imagen

One Solution collect form web for “Viewpager + FragmentpagerAdapet + Fragmentos + ListView = aplicación insanamente lenta”

Hay muchas maneras de mejorar el rendimiento de un ViewPager integrado con un ListView .

Primero, cambie el PagerAdapter de FragmentPagerAdapter a FragmentStatePagerAdapter . La diferencia es que usted carga 10 páginas dentro del buscapersonas. Y si pasó por todo el gerente sólo pondrá las páginas en onStop() por lo tanto, se reserva espacio. Sin embargo, usar FragmentStatePagerAdapter destruirá estas páginas pero guardará su instancia utilizando el método onSaveInstanceState . Así que cuando regreses no te tomará mucho tiempo cargar y ahorrarás memoria.

Normalmente FragmentPagerAdapter se utiliza con 3 páginas o menos.

La segunda forma de mejorar el rendimiento (pero drena la batería más rápidamente) es añadir esta línea a su AndroidManifest.xml con su etiqueta de aplicación:

 android:hardwareAccelerated="true" 

La tercera forma es detectar el gesto de deslizamiento. Puede hacerlo implementando onPageChangeListener luego en el método implementado onPageScrollStateChanged , compruebe si la página está Idle continuación, agregue ListView . De lo contrario, detenga el uso de ListView y desplácese a la página siguiente. Aquí hay una mejor explicación de este punto.

Espero que algunos de estos puntos pueden ayudarle a lograr un mejor rendimiento.

  • Android ViewPager guardar página anterior en onPageSelected
  • Resaltar o subrayar seleccionado TabPageIndicator
  • ViewPagerIndicator CirclePageIndicator no se puede instanciar
  • TabPageIndicator no estilo correctamente dentro de Fragmento
  • Android: RecyclerView dentro de un ScrollView
  • ViewPagerIndicator: Texto multilínea para el título de la pestaña?
  • ViewPagerIndicator - Establece TabPageIndicator en el centro
  • Navegación de la barra de acciones de Android deja de funcionar
  • Pestañas de ViewPagerIndicator: Iconos sobre el texto
  • Cambiar dinámicamente los títulos de ViewPagerIndicator
  • ¿Existe un DotsPageIndicator predeterminado para Android móvil (no usar)?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.