2

当我在另一个 xml 中包含导航条码 xml 时,它会生成以下错误:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.my/com.my.Login}: android.view.InflateException: Binary XML file line #1: Error inflating class <unknown>

login.xml 是

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    style="@style/tableStyle"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <include
        android:layout_height="wrap_content"
        layout="@layout/navbar" />

</LinearLayout>

navbar.xml 是

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@style/tableRowStyle"
    android:orientation="horizontal"
    android:paddingRight="0dp" >

    <Button
        android:id="@+id/button2"
        android:layout_width="52dp"
        android:layout_height="48dp"
        android:background="@drawable/home" />

    <View
        android:layout_width="1px"
        android:layout_height="fill_parent"
        android:background="#1f1f1f" />

    <View
        android:layout_width="1px"
        android:layout_height="fill_parent"
        android:background="#454545" />

    <Button
        android:id="@+id/button1"
        android:layout_width="190dp"
        android:layout_height="48dp"
        android:layout_weight="0.35"
        android:background="@drawable/stock" />

    <View
        android:layout_width="1px"
        android:layout_height="fill_parent"
        android:background="#1f1f1f" />

    <View
        android:layout_width="1px"
        android:layout_height="fill_parent"
        android:background="#454545" />

    <Button
        android:id="@+id/button2"
        android:layout_width="52dp"
        android:layout_height="48dp"
        android:background="@drawable/home" />

</LinearLayout>

背后的问题是什么?

4

4 回答 4

1

难道是这样

<include
    android:layout_height="wrap_content"
    layout="@layout/navbar" />

应该

<include
    android:layout_height="wrap_content"
    android:layout="@layout/navbar" />
于 2012-12-10T06:54:11.287 回答
1

java.lang.RuntimeException: 无法启动活动 ComponentInfo{com.my/com.my.Login}: android.view.InflateException: Binary XML file line #1: Error inflating class

如果您收到此错误,则意味着您的 setContentView(R.id.xml_file); 中的布局调用不匹配;因此,首先检查并确保您是否在 Java 代码中正确调用了布局 ID。

只需删除 xml 中的 style="@style/tableStyle" 即可。我认为它会起作用。

于 2012-12-10T07:04:49.630 回答
0

还要指定布局宽度。

<include
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    layout="@layout/navbar" />
于 2012-12-10T06:50:19.160 回答
0

移除android:background="@style/tableRowStyle"

现在它工作正常。谢谢大家的宝贵答案:)

于 2012-12-10T07:02:00.487 回答