A2A.
ListView
es el antepasado de RecyclerView
. Hubo muchas cosas que ListView
no hizo o no hizo bien. Si tuviera que reunir las deficiencias de ListView
y resolviera el problema abstrayendo los problemas en diferentes dominios, terminaría con algo como la vista del reciclador. Estos son los principales puntos problemáticos con ListViews:
- No impuso la reutilización de
View
para los mismos tipos de elementos (observe uno de los adaptadores que se usan en una vista de lista, si estudia el método getView verá que nada impide que un programador cree una nueva vista para cada fila, incluso si uno se pasa a través de la variableconvertView
) - No evitó los costosos usos de
findViewById
(incluso si reciclaba las vistas como se indicó anteriormente, era posible que los desarrolladores llamaran afindViewById
para actualizar el contenido visualizado de las vistas secundarias. El propósito principal del patrónViewHolder
enListViews
era almacenar en caché las llamadasfindViewById
Sin embargo, esto solo estaba disponible si lo sabías, ya que no formaba parte de la plataforma) - Solo admite el desplazamiento vertical con vistas visualizadas en fila (la vista del reciclador no importa dónde se colocan las vistas y cómo se mueven, se abstrae en un
LayoutManager
. Por lo tanto, un reciclador puede admitir elListView
tradicional como se muestra arriba, así como cosas como elGridView
, pero no se limita a eso, puede hacer más, pero debe hacer el trabajo de programación para que esto suceda). - Las animaciones para agregar / eliminar no fueron un caso de uso que se consideró. Depende completamente de usted averiguar cómo hacer esto (compare RecyclerView. Las clases de adaptadores notifican * las ofertas de métodos v. ListViews para tener una idea).
En resumen, RecyclerView
es una RecyclerView
más flexible de ListView
, aunque es posible que deba realizar más codificación por su parte.
- ¿Cuáles son las 10 principales aplicaciones de "descarga obligatoria" para cualquier teléfono inteligente?
- ¿Qué aplicación de Android hacer para un principiante total?
- Cómo conseguir usuarios para mi aplicación
- ¿Cuáles son los pros y los contras de Google Keep?
- ¿Se puede descargar C ++ en teléfonos Android?