English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
A veces, en una aplicación, hay algunos diseños complejos que se utilizan raramente. Cargarlos solo cuando se necesitan puede reducir el consumo de memoria y también acelerar la velocidad de renderizado de la interfaz.
Definir ViewStub
ViewStub es una vista ligera, no tiene altura ni anchura y no dibuja nada. Por lo tanto, su costo de carga y descarga es muy bajo. Cada ViewStub puede especificar el layout que se debe cargar utilizando la propiedad android:layout.
Este ViewStub se utiliza para la carga de un ProgressBar semi transparente. Solo se muestra cuando se inicia un nuevo trabajo.
<ViewStub android:id="@+id/stub_import" android:inflatedId="@+id/panel_import" android:layout="@layout/progress_overlay" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" />
Cargar ViewStub
Cuando se necesita cargar la disposición especificada por ViewStub, se puede usar el método setVisibility(View.VISIBLE) o el método inflate(), ambos tienen el mismo efecto.
((ViewStub) findViewById(R.id.stub_import)).setVisibility(View.VISIBLE); // o importPanel = ((ViewStub) findViewById(R.id.stub_import)).inflate();
Nota: El método inflate() devuelve un View cuando se completa la carga. Por lo tanto, no es necesario usar findViewById() para buscar el Root View de esta disposición.
Una vez que el ViewStub que gestiona el View se carga, ViewStub ya no es parte de la jerarquía de View. Será reemplazado por la disposición cargada y cambiará el ID de la disposición al ID especificado por la propiedad android:inflatedId de ViewStub.
Nota: Una de las desventajas de ViewStub es que actualmente no admite que el root View de la disposición a cargar sea <merge/Etiqueta.
Lo mencionado anteriormente es lo que el editor les ha presentado sobre la optimización de rendimiento de layout de Android en carga demanda de View, esperamos que les sea útil. Si tienen alguna pregunta, por favor déjenos un mensaje, el editor responderá a tiempo. También agradecemos mucho el apoyo de todos a la página web de tutorial de grito en este momento!