报错时整的错误log如下:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.mwl.Refuse_Classification, PID: 18040
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mwl.Refuse_Classification/com.mwl.Refuse_Classification.Activity.BottomNavigationActivity}: android.view.InflateException: Binary XML file line #19 in com.mwl.Refuse_Classification:layout/activity_bottom_navigation: Binary XML file line #19 in com.mwl.Refuse_Classification:layout/activity_bottom_navigation: Error inflating class com.google.android.material.bottomnavigation.BottomNavigationView
左边project栏里没有代码报错提示,在网上找了很多方法也没有用。
查看错误日志,提示xml文件里第19行有问题,但找到相关代码后也没有错误提示。
第19行代码如下:
app:menu=“@menu/bottom_nav_menu”
这行代码是定义底部导航栏的,注释掉这行代码后,程序能正常运行,但是底部导航栏没有了。
于是找到这行代码所示的文件之后,发现了问题所在。
`错误原因在于,我创建BottomNavigationActivity时,创建了两次。虽然事后,删除了一个,但定义底部导航栏内容的menu文件中内容并没有更改,出现了相同的id。此错误没有在project文件显示,只有点进去之后才能看见红色波浪线。