Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 私有导航视图后应用程序崩溃_Android_Android Studio - Fatal编程技术网

Android 私有导航视图后应用程序崩溃

Android 私有导航视图后应用程序崩溃,android,android-studio,Android,Android Studio,当我尝试在那里添加菜单时,我的应用程序崩溃。 我想最有可能的是我的私有变量nn public class UserAreaActivity extends AppCompatActivity { private NavigationView nn; //is it wrong? 和onCreate nn = (NavigationView) findViewById(R.id.drawerLayout); nn.setNavigationItemSelectedListen

当我尝试在那里添加菜单时,我的应用程序崩溃。 我想最有可能的是我的私有变量nn

public class UserAreaActivity extends AppCompatActivity {

private NavigationView nn; //is it wrong?
和onCreate

 nn = (NavigationView) findViewById(R.id.drawerLayout);
        nn.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(final MenuItem menuItem) {
                int id = menuItem.getItemId();
                switch (id) {
                    case R.id.nav_upload:
                        Intent upIntent = new Intent(UserAreaActivity.this, Upload.class);
                        UserAreaActivity.this.startActivity(upIntent);
                        return true;
                    case R.id.nav_logout:
                        SharedPreferences pref = getApplicationContext().getSharedPreferences("pref01", MODE_PRIVATE);
                        SharedPreferences.Editor editor = pref.edit();
                        editor.clear();
                        editor.apply();
                        Intent logIntent = new Intent(UserAreaActivity.this, LoginActivity.class);
                        UserAreaActivity.this.startActivity(logIntent);
                    default:
                        return true;
                }
            }
        });

当我实现NavigationView时,我没有在类中声明为变量,只在onCreate方法中声明,然后将其设置为重要内容的侦听器,如显示菜单,如下所示:

NavigationView view = (NavigationView) findViewById(R.id.navigation_view);
view.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
@Override public boolean onNavigationItemSelected(MenuItem menuItem) {
    Snackbar.make(content, menuItem.getTitle() + " pressed", Snackbar.LENGTH_LONG).show();
    menuItem.setChecked(true);
    drawerLayout.closeDrawers();
    return true;
}
});
我想你会发现这个链接很有用: