Java 使用NavigationView时出错/应用程序崩溃

Java 使用NavigationView时出错/应用程序崩溃,java,android,android-studio,runtime-error,navigation-drawer,Java,Android,Android Studio,Runtime Error,Navigation Drawer,我已经在我的应用程序上使用了NavigationView,现在每次我试图打开它时它都会崩溃。我已经搜索了很多类似的问题,但任何解决方案都适合我。我不知道怎么解决它。。。我使用的是Android Studio的最新版本,编译版本是SDK 30。 这就是错误: FATAL EXCEPTION: main Process: gladoop.javir3tics.test, PID: 18778 java.lang.RuntimeException: Unable to start ac

我已经在我的应用程序上使用了NavigationView,现在每次我试图打开它时它都会崩溃。我已经搜索了很多类似的问题,但任何解决方案都适合我。我不知道怎么解决它。。。我使用的是Android Studio的最新版本,编译版本是SDK 30。 这就是错误:

FATAL EXCEPTION: main
    Process: gladoop.javir3tics.test, PID: 18778
    java.lang.RuntimeException: Unable to start activity ComponentInfo{gladoop.javir3tics.test/gladoop.javir3tics.test.MainActivity}: android.view.InflateException: Binary XML file line #67: Binary XML file line #67: Error inflating class com.google.android.material.navigation.NavigationView
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2946)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3081)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1831)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:201)
        at android.app.ActivityThread.main(ActivityThread.java:6810)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
     Caused by: android.view.InflateException: Binary XML file line #67: Binary XML file line #67: Error inflating class com.google.android.material.navigation.NavigationView
     Caused by: android.view.InflateException: Binary XML file line #67: Error inflating class com.google.android.material.navigation.NavigationView
     Caused by: java.lang.reflect.InvocationTargetException
        at java.lang.reflect.Constructor.newInstance0(Native Method)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
        at android.view.LayoutInflater.createView(LayoutInflater.java:651)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:794)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:734)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:867)
        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:519)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:427)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
        at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:696)
        at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:170)
        at gladoop.javir3tics.test.MainActivity.onCreate(MainActivity.java:38)
        at android.app.Activity.performCreate(Activity.java:7224)
        at android.app.Activity.performCreate(Activity.java:7213)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2926)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3081)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1831)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:201)
        at android.app.ActivityThread.main(ActivityThread.java:6810)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
     Caused by: android.view.InflateException: Couldn't resolve menu item onClick handler AbrirInicio in class gladoop.javir3tics.test.MainActivity
        at androidx.appcompat.view.SupportMenuInflater$InflatedOnMenuItemClickListener.<init>(SupportMenuInflater.java:255)
        at androidx.appcompat.view.SupportMenuInflater$MenuState.setItem(SupportMenuInflater.java:484)
2020-10-17 20:03:20.942 18778-18778/gladoop.javir3tics.test E/AndroidRuntime:     at androidx.appcompat.view.SupportMenuInflater$MenuState.addItem(SupportMenuInflater.java:531)
        at androidx.appcompat.view.SupportMenuInflater.parseMenu(SupportMenuInflater.java:207)
        at androidx.appcompat.view.SupportMenuInflater.inflate(SupportMenuInflater.java:129)
        at com.google.android.material.navigation.NavigationView.inflateMenu(NavigationView.java:367)
        at com.google.android.material.navigation.NavigationView.<init>(NavigationView.java:235)
        at com.google.android.material.navigation.NavigationView.<init>(NavigationView.java:122)
            ... 28 more
     Caused by: java.lang.NoSuchMethodException: AbrirInicio [interface android.view.MenuItem]
        at java.lang.Class.getMethod(Class.java:2068)
        at java.lang.Class.getMethod(Class.java:1690)
        at androidx.appcompat.view.SupportMenuInflater$InflatedOnMenuItemClickListener.<init>(SupportMenuInflater.java:251)
            ... 35 more
致命异常:main
进程:gladoop.javir3tics.test,PID:18778
java.lang.RuntimeException:无法启动活动组件信息{gladoop.javir3tics.test/gladoop.javir3tics.test.MainActivity}:android.view.InflateException:二进制XML文件行#67:二进制XML文件行#67:膨胀类com.google.android.material.navigation.NavigationView时出错
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2946)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3081)
在android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
在android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)中
在android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)中
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1831)
位于android.os.Handler.dispatchMessage(Handler.java:106)
位于android.os.Looper.loop(Looper.java:201)
位于android.app.ActivityThread.main(ActivityThread.java:6810)
位于java.lang.reflect.Method.invoke(本机方法)
位于com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
原因:android.view.InflateException:二进制XML文件行#67:二进制XML文件行#67:对类com.google.android.material.navigation.NavigationView进行充气时出错
导致原因:android.view.InflateException:二进制XML文件行#67:错误膨胀class com.google.android.material.navigation.NavigationView
原因:java.lang.reflect.InvocationTargetException
位于java.lang.reflect.Constructor.newInstance0(本机方法)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:343)
位于android.view.LayoutInflater.createView(LayoutInflater.java:651)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:794)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:734)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:867)
位于android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828)
在android.view.LayoutInflater.充气(LayoutInflater.java:519)
在android.view.LayoutInflater.充气(LayoutInflater.java:427)
在android.view.LayoutInflater.inflate(LayoutInflater.java:374)
位于androidx.appcompat.app.appcompatedelegateimpl.setContentView(appcompatedelegateimpl.java:696)
位于androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:170)
位于gladoop.javir3tics.test.MainActivity.onCreate(MainActivity.java:38)
位于android.app.Activity.performCreate(Activity.java:7224)
位于android.app.Activity.performCreate(Activity.java:7213)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2926)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3081)
在android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
在android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)中
在android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)中
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1831)
位于android.os.Handler.dispatchMessage(Handler.java:106)
位于android.os.Looper.loop(Looper.java:201)
位于android.app.ActivityThread.main(ActivityThread.java:6810)
位于java.lang.reflect.Method.invoke(本机方法)
位于com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
原因:android.view.InflateException:无法解析gladoop.javir3tics.test.MainActivity类中单击处理程序AbrirInicio时的菜单项
在androidx.appcompat.view.SupportMenuInflater$InflatedOnMenuItemClickListener上。(SupportMenuInflater.java:255)
位于androidx.appcompat.view.SupportMenuInflater$MenuState.setItem(SupportMenuInflater.java:484)
2020-10-17 20:03:20.942 18778-18778/gladoop.javier3tics.test E/AndroidRuntime:在androidx.appcompat.view.SupportMenuInflater$MenuState.addItem(SupportMenuInflater.java:531)
在androidx.appcompat.view.SupportMenuInflater.parseMenu(SupportMenuInflater.java:207)中
在androidx.appcompat.view.SupportMenuInflater.充气(SupportMenuInflater.java:129)
在com.google.android.material.navigation.NavigationView.inflateMenu(NavigationView.java:367)上
在com.google.android.material.navigation.NavigationView.(NavigationView.java:235)
位于com.google.android.material.navigation.NavigationView.(NavigationView.java:122)
... 28多
原因:java.lang.NoSuchMethodException:Abririnico[interface android.view.MenuItem]
位于java.lang.Class.getMethod(Class.java:2068)
位于java.lang.Class.getMethod(Class.java:1690)
在androidx.appcompat.view.SupportMenuInflater$InflatedOnMenuItemClickListener上。(SupportMenuInflater.java:251)
... 35多
我的activity_main.xml如下所示:

<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.widget.DrawerLayout 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="@drawable/fondo_vertical"
    tools:context=".MainActivity"
    tools:ignore="ExtraText">


    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <ImageView
            android:id="@+id/imageView"
            android:layout_width="418dp"
            android:layout_height="match_parent"
            android:adjustViewBounds="true"
            android:scaleType="centerCrop"
            android:visibility="invisible"
            android:src="@drawable/fondo"
            tools:layout_editor_absoluteY="49dp" />

        <RelativeLayout
            android:layout_width="412dp"
            android:layout_height="679dp"
            android:layout_marginTop="58dp"
            tools:layout_editor_absoluteX="-1dp"
            tools:layout_editor_absoluteY="52dp">

            <WebView
                android:id="@+id/novedades"
                android:layout_width="match_parent"
                android:layout_height="200dp"
                android:scrollbars="none"
                android:touchscreenBlocksFocus="true"/>

            <ImageView
                android:id="@+id/youtube"
                android:layout_width="match_parent"
                android:layout_height="200dp"
                android:layout_below="@id/novedades"
                android:clickable="true"
                android:onClick="AbrirYouTube"
                android:src="@drawable/youtube" />

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="200dp"
                android:src="@drawable/twitch"
                android:layout_below="@id/youtube"
                android:id="@+id/twitch"
                android:onClick="AbrirTwitch"/>


        </RelativeLayout>

        <include
            android:id="@+id/include"
            layout="@layout/custom_appbar" />

    </RelativeLayout>



    <com.google.android.material.navigation.NavigationView
        android:id="@+id/menu_iconos"
        android:background="@color/menu_lateral_fondo"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/header_menu"
        app:itemIconPadding="15dp"
        app:menu="@menu/drawermenu">
    </com.google.android.material.navigation.NavigationView>



</androidx.drawerlayout.widget.DrawerLayout>

我的主要活动是:

包gladoop.javir3tics.test;
导入androidx.appcompat.app.appcompat活动;
导入androidx.core.view.GravityCompat;
导入androidx.drawerlay