Estoy construyendo una aplicación que genera dinámicamente algunas etiquetas y vistas. Definí cómo debería verse mi "vista personalizada" en un diseño xml y desde el código infló este diseño.¿Cómo guardar en caché las vistas en Android?
Dado que el diseño inflado será siempre el mismo, quiero hacer este paso solo una vez. Después de tener el diseño, quiero guardarlo en caché y usarlo la próxima vez cuando lo necesite.
El problema es que si pongo mi diseño inflado en el caché (en un hashmap por ejemplo) y lo agrego a un diseño principal, la próxima vez cuando intento agregarlo nuevamente (esta vez obtendré el diseño del caché) el sistema dice que mi diseño ya tiene un padre.
¿Conoces algún método para separar una vista secundaria del elemento primario sin quitar la vista secundaria?
añadido algo de código:
private static HashMap<String, LinearLayout> mComponentsCache;
// inflate and add the layout in cache
layout = (LinearLayout)mLf.inflate(R.layout.form_textbox, mHolder, false);
mComponentsCache.put(FormFieldType.TYPE_TEXT, layout);
¿Cómo exactamente almacena en caché el diseño y por qué lo hace de esta manera? – DroidBender
Quiero hacerlo de esta manera porque no es necesario volver a inflar la misma vista que ya estaba inflada. Como ejemplo, tengo que mostrar 5 cuadros de texto que tienen el mismo diseño pero diferente contenido. –