La característica "include" de diseño no admite la propiedad layout_gravity?
<LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <include layout="@layout/view1" android:layout_gravity="center_vertical" /> <include layout="@layout/view2" android:layout_gravity="center_vertical" /> </LinearLayout>
Así, android: layout_gravity siempre será ignorado? Eso es realmente malo para la reutilización de código … Parece que layout_margin tampoco es compatible.
Y aquí está el diseño de view1.xml
- Incluir un TextView y anular el texto
- ¿Cómo puedo hacer que varias configuraciones de pantalla diferentes se asignen a un pequeño conjunto de diseños sin tener que duplicar partes de mi XML de diseño?
- Incluir no funciona
- ¿Cómo accedo a las vistas dentro del diseño cuando la reutilizo varias veces?
- Incluya algunas páginas en una página en JQuery móvil
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:minHeight="45dip" android:background="@drawable/updater_background" > <ProgressBar style="?android:attr/progressBarStyleSmall" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_marginRight="7dip" android:visibility="gone" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" /> </LinearLayout>
- Ejemplo simple de uso de <merge> y <include> en diseños XML de Android
- ¿Por qué no deberíamos envolver cada diseño de Android XML incluido en un par de <fusion>?
- Android: ¿Cómo incluir dinámicamente una disposición XML?
- ¿Es posible sustituir / aplicar estilo en el diseño incluido con la etiqueta <include>?
- Diferencia entre <include> y <ViewStub> en android
- Preferencias anidadas.xml
- ¿Cómo incluir un diseño dos veces en Android?
- ¿Cuál es el propósito de la etiqueta <merge> de Android en los diseños XML?
Dos años más tarde, el error todavía existe! Aunque todos los atributos de android: layout_ * deben ser Tag, el atributo androide: layout_gravity no es (qué tipo de es una gran desventaja para la reutilización de diseño).
El trabajo alrededor de que estoy utilizando actualmente es fijar el margen de la disposición programmatically como sigue:
( (LinearLayout.LayoutParams) includedView.getLayoutParams () ).gravity = Gravity.BOTTOM | Gravity.RIGHT;
O para un FrameLayout como padre, por ejemplo:
( (FrameLayout.LayoutParams) includedView.getLayoutParams () ).gravity = Gravity.BOTTOM | Gravity.RIGHT;
EDIT:
También he encontrado que el atributo androide: layout_gravity se aplica para la etiqueta include if it (la etiqueta include ) tiene etiquetas layout_width y layout_height !
http://developer.android.com/resources/articles/layout-tricks-reuse.html indica que todos los atributos de layout_ son compatibles.
En su caso el centrar en un LinearLayout
horizontal probablemente no tiene efecto. Pruebe otro diseño otros parámetros.
Creo que esto puede ser resuelto mediante la inserción de diseño ponderado
Por ejemplo
<LinearLayout android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.sample.SampleActivity"> <LinearLayout android:layout_weight="1" android:layout_width="match_parent" android:layout_height="0dp"> <--Some other Views--> </LinearLayout> <include android:layout_width="match_parent" android:layout_height="wrap_content" layout="@layout/my_awesome_layout" />
El LinearLayout se puede reemplazar por Espacio, si no desea ningún componente.