InflateException:二进制XML文件行#22:错误导致类<unknown>

Men*_*nus 7 java xml android

当我尝试运行我的应用程序时崩溃,我在logcat中得到以下内容:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.application/com.example.application.StartActivity}: android.view.InflateException: Binary XML file line #22: Error inflating class <unknown>
Run Code Online (Sandbox Code Playgroud)

.....

Caused by: android.view.InflateException: Binary XML file line #22: Error inflating class <unknown>
Run Code Online (Sandbox Code Playgroud)

.....

Caused by: java.lang.reflect.InvocationTargetException
Run Code Online (Sandbox Code Playgroud)

.....

Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1
Run Code Online (Sandbox Code Playgroud)

错误还包括我自己的代码中的一行,我在其中设置内容视图

这是我引用的xml文件

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin">



            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="200dp">

                <TextView
                    android:id="@+id/summonerName"
                    android:layout_width="439dp"
                    android:layout_height="wrap_content"
                    android:layout_centerVertical="true"
                    android:gravity="center_vertical"
                    android:hint="@string/prompt_email"
                    android:textSize="?android:textAppearanceLarge"
                    android:singleLine="true" />

                <Spinner
                    android:id="@+id/region"
                    android:layout_width="83dp"
                    android:layout_height="wrap_content"
                    android:layout_centerVertical="true"
                    android:layout_toRightOf="@id/summonerName"
                    android:layout_alignParentRight="true"
                    />

            <Button
                android:id="@+id/btnSearch"
                style="?android:textAppearanceSmall"
                android:layout_width="200dp"
                android:layout_height="wrap_content"
                android:layout_marginTop="16dp"
                android:background="#777"
                android:layout_alignParentBottom="true"
                android:layout_alignParentRight="true"
                android:text="@string/action_sign_in"
                android:textColor="#FFF"
                android:textStyle="bold" />

            </RelativeLayout>
        </LinearLayout>


<ListView
    android:id="@+id/left_drawer"
    android:layout_width="240dp"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:background="#f3f3f4"
    android:choiceMode="singleChoice"
    android:divider="#dadadc"
    android:dividerHeight="1dp"/>
Run Code Online (Sandbox Code Playgroud)

我不知道如何处理这些错误.任何人都可以帮助我走上正轨吗?

Owa*_*kel 2

您所有的@dimens 都应该被定义

例如

<resources>
    <!-- Default margins, per the Android Design guidelines. -->
    <dimen name="activity_horizontal_margin">16dp</dimen>
    <dimen name="activity_vertical_margin">16dp</dimen>
</resources>
Run Code Online (Sandbox Code Playgroud)

您可能已将它们添加到例如这些文件夹中

  • 值-sw600dp
  • 价值观-sw600dp-land
  • 价值观-v19
  • 值-xxhdpi

或者它们可能属于的任何其他文件夹
但不要忘记这些也必须位于

  • 价值观

它们也必须在那里定义

如果这不是问题,请尝试为您拥有的每个布局 XXXX 文件夹创建一个 value-XXXX 文件夹

  • 布局-xhdpi
  • 值-xhdpi

  • 布局大
  • 大值

例如