如何修复 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。
我有问题,找不到解决方案! 我在 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。