2010-08-19 13 views
13

Por lo que yo entiendo, ni una ViewStub ni una vista que sea GONE participan en los pasos de medida y disposición (o representación de todos modos).ViewStub frente a View.GONE

¿Hay alguna diferencia en el rendimiento de la representación? ¿Cuál es la mejor práctica sobre cuándo usar cuál?

Respuesta

5

El rendimiento de la representación entra en la imagen cuando está inflando las vistas.

Supongo que es mucho más barato inflar un ViewStub que inflar una Vista, ya sea desde XML o cambiando la visibilidad. ViewStub se utiliza especialmente cuando necesita agregar/eliminar vistas (indefinidas) (por ejemplo, agregar números de teléfono a un contacto determinado). Espero que esto sea lo que estabas buscando.

+2

no está inflando un ViewStub equivalente a inflar la vista que los stubs de ViewStub (hey cool, por ejemplo, ¡3 veces seguidas!)? – Matthias

+0

Demasiadas vistas: ¡demasiados talones! ;). No lo creo. Recuerdo vagamente haber leído algo al respecto. Documentación: "inflar los recursos de diseño de forma inflexible durante el tiempo de ejecución; ViewStub existe en la jerarquía de vistas" - Supongo que esto implica que es mucho más barato inflar un ViewStub que inflar una vista. –

+4

En otras palabras, mientras una ViewStub aún no se haya inflado, es más rápida de renderizar que una vista que ha desaparecido, ¿correcto? Además, cuando en realidad tiene que ser inflado, ¿la inflación es más barata que una inflación "normal"? – Matthias