xml - ejemplo - layout dinamico android
android include tag: referencia de diseño no válida (8)
Creo que debería mencionar cómo resolví el mismo problema. Intenté limpiar el proyecto y no funcionó. Tengo nombres bastante grandes para el diseño (chrono_first_small_field), y esa tampoco fue la causa.
Cerré Eclipse, y lo abrí de nuevo, y funcionó.
Eso tiene más sentido que tener que implementar el método onMeasure :-)
Tengo un problema, incluido un diseño diferente a través de la etiqueta de inclusión en el archivo xml de diseño de Android. Al especificar la referencia de diseño (@layout / ...), recibo una InflateException en el Eclipse ADT con el siguiente error: InflateException: debe especificar una referencia de diseño válida. El diseño ID @ layout / func_edit_simple_calculator_toolbox no es válido.
la referencia debe ser válida, ya que la he seleccionado de la lista de mis otros diseños y no la escribí. Estoy usando android sdk v2.1
estos son los archivos de diseño
func_edit_simple_calculator_toolbox.xml
<?xml version="1.0" encoding="utf-8"?>
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content" android:layout_width="wrap_content">
<TableRow android:id="@+id/TableRow01" android:layout_width="wrap_content"android:layout_height="wrap_content">
<Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1"></Button>
<Button android:id="@+id/Button02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="2"></Button>
<Button android:id="@+id/Button03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="3"></Button>
<Button android:id="@+id/Button04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="+"></Button>
</TableRow>
<TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" android:layout_height="wrap_content">
<Button android:id="@+id/Button05" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="4"></Button>
<Button android:id="@+id/Button06" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="5"></Button>
<Button android:id="@+id/Button07" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="6"></Button>
<Button android:id="@+id/Button08" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="-"></Button>
</TableRow>
</TableLayout>
function_editor_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<com.calculoid.FunctionView android:id="@+id/function_view" android:layout_width="fill_parent" android:layout_height="fill_parent"/>
<include android:id="@+id/include01" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/func_edit_simple_calculator_toolbox"></include>
</LinearLayout>
¿Alguien sabe cuál podría ser el problema?
gracias por adelantado
He "resuelto" el problema, pero no sé lo que realmente me ayudó. Mis archivos de diseño no sufrieron ninguna reescritura importante y prácticamente contienen lo mismo. El único cambio notable que he hecho antes de que el problema desapareciera fue anular el método onMeasure (int, int) en mi clase de vista personalizada, con la implementación simplemente llamando a setMeasuredDimension (100, 100).
No veo nada inmediatamente incorrecto con eso, así que eso es un poco extraño. Solo puedo pensar en dos cosas: 1) ¿Has intentado usar un nombre de archivo más corto? Hay algunas restricciones sobre lo que es aceptable en un nombre de archivo, por ejemplo, sin caracteres en mayúsculas o símbolos, con el fin de garantizar la compatibilidad y la longitud del nombre del archivo podría ser uno de ellos. 2) ¿Has intentado eliminar algunas de tus declaraciones de android: ... en el include, y dejándolas en solo <include layout="@layout/..."/>
? En realidad, no necesita especificar su alto y ancho en el include como ya está definido en el archivo de diseño importado.
Para aquellos que usan Xamarin Studio, agregué un montón de archivos AXML de un proyecto diferente, y también obtuve exactamente el mismo error. Simplemente apagué y reinicié Xamarin Studio (PC) y esto también resolvió el problema. Es interesante que un IDE diferente tenga el mismo problema.
Para mí, el problema era que el nombre del diseño era incorrecto: utilicé "-" en lugar de "_". AndroidStudio no me dijo que algo iba mal hasta que intenté implementar la aplicación
Si alguien tropieza con este hilo buscando este error:
Caused by: android.view.InflateException: You must specifiy a layout in the include tag: <include layout="@layout/layoutID" />
Asegúrate de hacerlo:
<include layout="@layout/your_layout" />
y no
<include android:layout="@layout/your_layout" />
layout
no debería tener android:
delante de él.
Verifique si está vacío
<include> </include>
etiquetas, (probablemente causadas por el formato de código automático).
Pueden aparecer en algún lugar ''oculto'' en tu xml.
lanza eclipse con la opción -clean y tu problema está garantizado . Tardará unos 30 segundos más en iniciarse