如何解决错误膨胀类android.support.design.widget.BottomNavigationView?

时间:2019-09-07 17:46:43

标签: java android android-layout bottomnavigationview

我正在尝试实现底部导航视图方法,但是在运行代码时出现此错误

原因:android.view.InflateException:二进制XML文件第19行:二进制XML文件第19行:膨胀类android.support.design.widget.BottomNavigationView时出错      原因:android.view.InflateException:二进制XML文件行#19:错误膨胀了类android.support.design.widget.BottomNavigationView      原因:java.lang.ClassNotFoundException:在路径:DexPathList [

]上找不到类“ android.support.design.widget.BottomNavigationView”

我应该怎么做才能解决这个问题?

activity_home布局

}

build.gradle(模块应用)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white"
    app:layout_behavior="android:.support.design.widget.BottomSheetBehaviour"
    tools:context=".HomeActivity">

    <FrameLayout
        android:id="@+id/fragment_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_above="@+id/bottom_navigation">

    </FrameLayout>

    <android.support.design.widget.BottomNavigationView
        android:id="@+id/bottom_navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:background="@color/purpleBae"
        app:itemIconTint="@android:color/white"
        app:itemTextColor="@android:color/white"
        app:menu="@menu/home_menu" />

</RelativeLayout>

2 个答案:

答案 0 :(得分:1)

添加以下依赖项:

dependencies {
    // https://mvnrepository.com/artifact/com.google.android.material/material
    implementation "com.google.android.material:material:1.0.0"
}

并使用com.google.android.material.bottomnavigation.BottomNavigationView

答案 1 :(得分:0)

您不能在同一项目中将支持库和androidx库混合在一起,除非您使用Jetpack工具,否则肯定会有冲突。将您的支持库迁移到androidx

Androidx布局文件中的引用也应该全部是androidx工件,而不是其他。

因此标记如下:

  <android.support.design.widget.BottomNavigationView
    android:id="@+id/bottom_navigation"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:background="@color/purpleBae"
    app:itemIconTint="@android:color/white"
    app:itemTextColor="@android:color/white"
    app:menu="@menu/home_menu" />

应该是:

<com.google.android.material.bottomnavigation.BottomNavigationView
  android:id="@+id/bottom_navigation"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:background="@color/purpleBae"
    app:itemIconTint="@android:color/white"
    app:itemTextColor="@android:color/white"
    app:menu="@menu/home_menu" />