尝试调用虚拟方法';android.view.Menu 我在MainActivity.java中没有这个代码,我在一个名为Login.java的代码中有它
我在Logcat中有以下错误: Login.java:93中的代码是以下函数:尝试调用虚拟方法';android.view.Menu 我在MainActivity.java中没有这个代码,我在一个名为Login.java的代码中有它,java,android,android-studio,nullpointerexception,android-navigationview,Java,Android,Android Studio,Nullpointerexception,Android Navigationview,我在Logcat中有以下错误: Login.java:93中的代码是以下函数: private void addMenuItemLogOut(){ NavigationView navigationView= (NavigationView) findViewById(nav_view); Menu menu = navigationView.getMenu(); //Line 93 menu.findItem(R.id.nav_signin).setVisible(fa
private void addMenuItemLogOut(){
NavigationView navigationView= (NavigationView) findViewById(nav_view);
Menu menu = navigationView.getMenu(); //Line 93
menu.findItem(R.id.nav_signin).setVisible(false);
menu.findItem(R.id.nav_send).setVisible(true);
}
和命令,当用户输入正确的用户名和密码时,使函数更高
if(isLogin){
addMenuItemLogOut(); //Here
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
Bundle bundle = new Bundle();
bundle.putString("user_id", userd);
intent.putExtras(bundle);
startActivity(intent);
}
当应用程序尝试使用具有空值的对象引用时,将引发NullPointerException 您应该使用而不是getMenu() 获取指定位置的标题视图 试一试
NavigationView navigationView = findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
View header = navigationView.getHeaderView(0);
navigationView.getMenu().findItem(R.id.nav_signin).setVisible(false);
navigationView.getMenu().findItem(R.id.nav_send).setVisible(true);
当应用程序尝试使用具有空值的对象引用时,将引发NullPointerException 您应该使用而不是getMenu() 获取指定位置的标题视图 试一试
NavigationView navigationView = findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
View header = navigationView.getHeaderView(0);
navigationView.getMenu().findItem(R.id.nav_signin).setVisible(false);
navigationView.getMenu().findItem(R.id.nav_send).setVisible(true);
@0X0nosugarYes@0X0nosugar是的,我有这样一个:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“android.view.com.google.android.material.navigation.NavigationView.getHeaderView(int)”,您应该使用
findViewById(R.id.your\id)
。检查您的idnav_view
是否存在于xml中?是的,它存在于activity_main.xml中我在MainActivity.java中没有此代码,我有一个叫登录的。java@snow915您的NavigationView
属于哪个活动?现在我有了这个:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“android.view.com.google.android.material.navigation.NavigationView.getHeaderView(int)”。您应该使用findViewById(R.id.your_id)
。检查您的idnav_view
是否存在于xml中?是的,它存在于activity_main.xml中我在MainActivity.java中没有此代码,我在一个名为Login的文件中有此代码。java@snow915您的NavigationView
属于哪个活动?