XML-макет Android: ошибка синтаксического анализа XML: неправильно сформирован (неверный токен) - я закрыл теги View

Я получаю эту ошибку на Button Посмотреть. Из многих вопросов, которые я видел в SO, кажется, что эта ошибка возникает, когда вы не закрываете свои представления должным образом.

Я думаю, что я закрыл все теги правильно, но все еще получаю эту ошибку. Это почему?

<RelativeLayout 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"
    tools:context="${relativePackage}.${activityClass}" >

    <Button 
        android:layout_width="wrap_content"
        android:layout:height="wrap_content"
        android:text="@string/mainActivity_button1"
        android:onClick="startSecondActivity" />

</RelativeLayout>

3 ответа

Решение

Там дополнительная / опечатка : в имени атрибута.

замещать

android:layout:height

с

android:layout_height

Ошибка касается не только закрытых тегов, но и проблем синтаксиса XML в целом. В XML вы можете иметь только один префикс пространства имен для атрибута, а префиксы пространства имен отделяются от имени с помощью :,

<Button 
        android:layout_width="wrap_content"
        android:layout:height="wrap_content"
        android:text="@string/mainActivity_button1"
        android:onClick="startSecondActivity" />

Заменить: в имени атрибута.

<Button 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/mainActivity_button1"
    android:onClick="startSecondActivity" />

Это, конечно, опечатка на этой линии:

android:layout:height="wrap_content"

заменить вышеуказанную строку на:

android:layout_height="wrap_content"
Другие вопросы по тегам