我有一组9个按钮,3组3个。由水平线性布局组成的集合,3个集合在一起形成父垂直线性布局中的9个按钮的数组。
错误出现在第一个按钮开始标记处,并显示“解析XML时出错:格式不正确(无效标记)”。
我认为问题可能在于LinearLayout的开始和结束标记,但我已多次检查以确保它们是正确的,我很确定它们是正确的。我不确定还有什么可能导致这个问题。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layoutRelativeGame"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/layoutVerticalgame"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="25dp"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/layoutHorizontalGame1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
<Button
android:id="@+id/button1"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button2"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button3"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
</LinearLayout>
<LinearLayout
android:id="@+id/layoutHorizontalGame2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
<Button
android:id="@+id/button4"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button5"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button6"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
</LinearLayout>
<LinearLayout
android:id="@+id/layoutHorizontalGame3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
<Button
android:id="@+id/button7"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button8"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button9"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/layoutVerticalgame"
android:layout_centerHorizontal="true"
android:layout_marginTop="14dp"
android:text="@string/turn"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/txtPlayerTurn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_centerHorizontal="true"
android:textAppearance="?android:attr/textAppearanceLarge" />
<Button
android:id="@+id/button_reset"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/txtPlayerTurn"
android:layout_centerHorizontal="true"
android:layout_marginTop="14dp"
android:text="@string/reset" />
</RelativeLayout>
答案 0 :(得分:0)
您在内部LinearLayout
上错过了一个近角括号。这是一个固定版本:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layoutRelativeGame"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/layoutVerticalgame"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="25dp"
android:orientation="vertical">
<LinearLayout
android:id="@+id/layoutHorizontalGame1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<Button
android:id="@+id/button1"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button2"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button3"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
</LinearLayout>
<LinearLayout
android:id="@+id/layoutHorizontalGame2"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<Button
android:id="@+id/button4"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button5"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button6"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
</LinearLayout>
<LinearLayout
android:id="@+id/layoutHorizontalGame3"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<Button
android:id="@+id/button7"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button8"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
<Button
android:id="@+id/button9"
android:layout_width="100dp"
android:layout_height="100dp"
android:text="@string/Blank" />
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/layoutVerticalgame"
android:layout_centerHorizontal="true"
android:layout_marginTop="14dp"
android:text="@string/turn"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/txtPlayerTurn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_centerHorizontal="true"
android:textAppearance="?android:attr/textAppearanceLarge" />
<Button
android:id="@+id/button_reset"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/txtPlayerTurn"
android:layout_centerHorizontal="true"
android:layout_marginTop="14dp"
android:text="@string/reset" />
</RelativeLayout>
答案 1 :(得分:0)
您尚未正确关闭<LinearLayout>
。在每次LinearLayout声明后,您都缺少>
字符。
答案 2 :(得分:0)
添加结束&gt;到您的LinearLayout,其id为layoutHorizontalGame1,如下所示:
<LinearLayout
android:id="@+id/layoutHorizontalGame1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
答案 3 :(得分:0)
这意味着您的XML文件中存在编译错误。
在您的情况下,您忘记使用“&gt;”
关闭某些LinearLayout标记例如:
<LinearLayout
android:id="@+id/layoutHorizontalGame2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
应该是:
<LinearLayout
android:id="@+id/layoutHorizontalGame2"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
答案 4 :(得分:0)
尽管已经回答了,但我找到的最佳答案是 - 在Eclipse中,打开出现此错误问题的XML文件,然后按键盘上的CTRL + SHIFT + F. 这将格式化您的文件,所有错误都消失了。