Cómo resolver el desbordamiento de la tabla de referencia global débil de Android
Este diseño implica problemas de optimización de la vista de lista.
En primer lugar, la vista de lista debe escribirse estrictamente de acuerdo con el formato de convertView y viewHolder, para garantizar básicamente los datos óptimos.
En segundo lugar, si el artículo personalizado incluye imágenes, etc., debes optimizar las imágenes. No es necesario realizar la liberación del mapa de bits.
En tercer lugar, intente evitar el uso de static en BaseAdapter para definir variables estáticas globales. Esto tiene un gran impacto. static es una palabra clave en Java. Cuando se usa para modificar variables miembro, entonces la variable pertenecerá. la clase, no una instancia de la clase. Por lo tanto, el ciclo de vida de las variables modificadas con estática es muy largo. Si lo usa para referirse a algunas instancias que consumen demasiados recursos (por ejemplo, el contexto es el más común), debe intentar evitar su uso en este momento. .
En cuarto lugar, intente evitar el uso de subprocesos en el adaptador ListView, porque la razón principal de las pérdidas de memoria de los subprocesos es que el ciclo de vida del subproceso es incontrolable.
Finalmente, si has hecho todo lo anterior, tu vista de lista se ha optimizado muy bien. Con respecto a su pregunta, si la altura de su control de vista de lista está configurada en fill_parent, porque la deformación hará que la vista de lista calcule infinitamente su propia altura durante el deslizamiento. ¿La carga de su texto se ha enhebrado y recargado varias veces? ¿Las variables en su elemento generan nuevos objetos de memoria varias veces sin límite, etc.?