如何修复 Error inflating class android.support.design.widget.NavigationView

how fix Error inflating class android.support.design.widget.NavigationView

我有问题,找不到解决方案! 我在 XML 中使用:

<?xml version="1.0" encoding="utf-8"?>

    <androidx.drawerlayout.widget.DrawerLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:tools="http://schemas.android.com/tools"
      xmlns:app="http://schemas.android.com/apk/res-auto"
      android:id="@+id/activity_main"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      tools:context="com.example.libraryproject.MainActivity"
      android:background="@android:color/holo_green_dark">

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


        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Main"
            android:textSize="50dp"
            android:id="@+id/textView"
            android:layout_marginTop="200dp"
            android:layout_marginLeft="130dp"/>


    </RelativeLayout>

    <android.support.design.widget.NavigationView ------! #32
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        app:menu="@menu/navigation_menu"
        android:layout_gravity="start"
        app:headerLayout="@layout/navigation_header"
        android:id="@+id/nv">
    </android.support.design.widget.NavigationView>

</androidx.drawerlayout.widget.DrawerLayout>

错误显示是: android.view.InflateException:二进制 XML 文件行 #32:二进制 XML 文件行 #32:错误膨胀 class android.support.design.widget.NavigationView

在应用程序中:

在你的build.gradle中有一些错误

  • 支持库 29.0.2 和 29.1.1 不存在
  • 您正在同时使用 androidx 和支持库并且您不能这样做。

然后,由于您使用的是 androidx 组件 <androidx.drawerlayout.widget.DrawerLayout,因此您必须使用

<com.google.android.material.navigation.NavigationView
 ...>

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

最后检查你的应用主题。您必须使用Material Component Theme

android.support.design.widget.NavigationView 替换为 com.google.android.material.navigation.NavigationView,因为您使用的是 AndroidX。