扩展类android.support.v4.widget.drawerlayout时出错

use*_*191 10 android android-layout drawerlayout

我已就此主题进行了大量搜索.我做了以下事情:

  1. 通过SDK Manager确保支持库是最新的.
  2. 进入构建路径和订单和导出选项卡以确保检查依赖项.
  3. 清理了我的项目并重新启动了adt.
  4. 右键单击项目 - > android工具 - >添加支持库.

我已经将支持库用于另一个项目,它工作正常,但我没有使用drawerlayout.下面是我在活动类中调用的xml文件.它调用时会发生此错误setContentView(R.layout.main_sliding_layout);

<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">

    <FrameLayout
        android:id="@+id/frame_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <ListView
        android:id="@+id/list_slidermenu"
        android:layout_width="240dp"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:choiceMode="singleChoice"
        android:divider="@color/list_divider"
        android:dividerHeight="1dp"       
        android:listSelector="@drawable/list_selector"
        android:background="@color/list_background"/>
</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)

Kal*_*kar 15

在最新版本中:
如果您使用的是androidx支持库

使用:
androidx.drawerlayout.widget.DrawerLayout

而不是:
android.support.v4.widget.DrawerLayout

用途:
com.google.android.material.navigation.NavigationView

而不是:
android.support.design.widget.NavigationView

对于其他等效的androidx类,请参考以下链接:https : //developer.android.com/jetpack/androidx/migrate


use*_*191 7

如果有人在寻找解决方案或者发生了什么事情,那将是一个谜.我走了几个小时,只是放松一下,清醒一下,以为我会回来指出我在看的东西.我启动了应用程序,这件事刚刚开始工作.我没有做任何新的更新或任何事情.很棒,它正在发挥作用,但对于发生的事情并没有真正的帮助.哦,好吧,向前和向上.


小智 6

如果您只是迁移到AndroidX,则会弹出相同的错误。

Error inflating class androidx.core.widget.DrawerLayout
Run Code Online (Sandbox Code Playgroud)

只是改变

androidx.core.widget.DrawerLayout
Run Code Online (Sandbox Code Playgroud)

androidx.drawerlayout.widget.DrawerLayout
Run Code Online (Sandbox Code Playgroud)

在每个XML中。