0

我使用 Eclipse 为我正在创建的 Android 应用程序创建了一个 xml 文件。在完成所有布局并进行一些编码等之后,我发现最终产品需要处于较早的 API 级别(准确地说是 10 级)。所以我开始回滚代码和xml文件的过程,但遇到了一个我无法解决的问题,而且似乎没有任何文档。我创建了一个表格布局,并且有很多表格行。当我尝试在虚拟设备上运行程序时,我得到了一个关于 TableRow.measureNullChild(int) 函数的空指针异常,其代码是:

@Override
int measureNullChild(int childIndex) {
return mConstrainedColumnWidths[childIndex];
}

显然问题出在某个地方,但我不确定确切的细节,并且想知道是否有其他人遇到过这个问题。我现在将发布导致崩溃的 xml 文件:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/livelayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

<TableRow
    android:id="@+id/tableRow8"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingTop="5dp" >

     <RelativeLayout
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:background="@drawable/hope" >

    </RelativeLayout>
</TableRow>

<TableRow
    android:id="@+id/tableRow7"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="30dp"
        android:layout_gravity="center_vertical"
        android:layout_margin="0dp"
        android:gravity="center"
        android:paddingLeft="0dp"
        android:paddingTop="0dp"
        android:text="@string/us"
        android:textSize="28dp"
        android:textColor="#CC7F32" />

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/TextView01"
            android:layout_width="70dp"
            android:layout_height="30dp"
            android:layout_margin="0dp"
            android:gravity="center"
            android:paddingLeft="0dp"
            android:paddingTop="0dp"
            android:text="@string/them"
            android:textSize="26dp"
            android:textColor="#CC7F32" />

    </FrameLayout>

</TableRow>

<TableRow
    android:id="@+id/tableRow2"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_vertical"
    android:visibility="visible" >

    <Button
        android:id="@+id/us2"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/us2" />

    <Button
        android:id="@+id/us2made"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/us2m" />

    <Button
        android:id="@+id/button3"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/them2" />

    <Button
        android:id="@+id/button4"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/them2m" />

</TableRow>

<TableRow
    android:id="@+id/tableRow1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center_vertical" >

    <Button
        android:id="@+id/button5"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/us1" />

    <Button
        android:id="@+id/button6"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/us1m" />

    <Button
        android:id="@+id/button7"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/them1" />

    <Button
        android:id="@+id/button8"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/them1m" />
</TableRow>

<TableRow
    android:id="@+id/tableRow3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center_vertical" >

    <Button
        android:id="@+id/button9"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/us3" />

    <Button
        android:id="@+id/button10"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/us3m" />

    <Button
        android:id="@+id/button11"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/them3" />

    <Button
        android:id="@+id/button12"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/them3m" />

</TableRow>

<TableRow
    android:id="@+id/tableRow4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center_vertical" >

    <Button
        android:id="@+id/button13"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/usOreb" />

    <Button
        android:id="@+id/button14"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/usXreb" />

    <Button
        android:id="@+id/button15"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/themOreb" />

    <Button
        android:id="@+id/button16"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/themXreb" />

</TableRow>

<TableRow
    android:id="@+id/tableRow5"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center_vertical" >

    <Button
        android:id="@+id/button17"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/us2f" />

    <Button
        android:id="@+id/button18"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:text="@string/us2fm" />

    <Button
        android:id="@+id/button19"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:padding="5dp"
        android:text="@string/them2f" />

    <Button
        android:id="@+id/button20"
        android:layout_width="70dp"
        android:layout_height="50dp"
        android:padding="5dp"
        android:text="@string/them2fm" />

</TableRow>

<TableRow
    android:id="@+id/tableRow6"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingTop="30dp" >
</TableRow>

<FrameLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingLeft="60dp"
    android:paddingRight="60dp" >

    <Button
        android:id="@+id/button21"
        android:layout_width="201dp"
        android:layout_height="match_parent"
        android:text="Button" />

</FrameLayout>

<FrameLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingLeft="60dp"
    android:paddingRight="60dp"
    android:paddingTop = "15dp" >

    <Button
        android:id="@+id/Button01"
        android:layout_width="201dp"
        android:layout_height="match_parent"
        android:text="Button" />

</FrameLayout>


</TableLayout>

任何帮助都会非常棒,因为我已经被困在这里两天了,并且无法弄清楚出了什么问题。如果我这样做了,我一定会在这里发帖,以便谷歌员工在发生这种情况时可以找到答案。提前致谢

编辑:在删除除一个之外的所有行后,包含内容,我在同一个地方得到同样的错误

4

1 回答 1

1

但是,这当然是一件太简单的事情了。我忘记将 Gingerbread 布局 ID 替换为 Ice Cream Sandwich 布局 ID,因此它试图在 10 级环境中加载 API 15 布局。更换身份证完全解决了这个问题。

于 2012-06-08T22:58:07.190 回答