Android: ¿cuándo / por qué debería usar FrameLayout en lugar de Fragmento?
Estoy creando un diseño para pantallas grandes, que se supone que consiste en 2 partes diferentes, una izquierda y una derecha. Para hacer eso pensé que usar 2 Fragmentos es la elección correcta.
Luego eché un vistazo al ejemplo de la navegación con elMaster / Detail-Flow. Tiene un diseño de 2 paneles, donde a la derecha está la navegación, y a la izquierda está la vista de detalle.
Pero en ese ejemplo, diferente de lo que esperaba ver, para la vista detallada hay unaFrameLayout
que luego tiene unFragment
, en vez de unaFragment
directamente.
El diseño XML se parece a esto (un ejemplo):
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:baselineAligned="false"
android:divider="?android:attr/dividerHorizontal"
android:orientation="horizontal"
android:showDividers="middle"
tools:context=".WorkStationListActivity" >
<fragment
android:id="@+id/workstation_list"
android:name="de.tuhh.ipmt.ialp.history.WorkStationListFragment"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
tools:layout="@android:layout/list_content" />
<FrameLayout
android:id="@+id/workstation_detail_container"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="3" />
</LinearLayout>
Mi pregunta ahora es: ¿por qué es unFrameLayout
utilizado en lugar de laFragment
en sí para la vista de detalle? ¿Cuál es la razón o la ventaja? ¿Debo usarlo también?