Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.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
Java 错误:应用程序不断崩溃,无法加载_Java_Android_Android Studio - Fatal编程技术网

Java 错误:应用程序不断崩溃,无法加载

Java 错误:应用程序不断崩溃,无法加载,java,android,android-studio,Java,Android,Android Studio,我对编程有点陌生,不确定我的代码哪里做错了 错误如下所示 Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.google.android.material.bottomnavigation.BottomNavigationView.setOnNavigationItemSelectedListener(com.google.android.material.bott

我对编程有点陌生,不确定我的代码哪里做错了

错误如下所示

     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.google.android.material.bottomnavigation.BottomNavigationView.setOnNavigationItemSelectedListener(com.google.android.material.bottomnavigation.BottomNavigationView$OnNavigationItemSelectedListener)' on a null object reference
        at com.example.cleverreality.MainActivity.onCreate(MainActivity.java:42)
这是我一直在处理的片段代码,第二行有错误

        BottomNavigationView bottomNav = findViewById(R.id.bottom_navigation);
        bottomNav.setOnNavigationItemSelectedListener(navListener);
    }
    private BottomNavigationView.OnNavigationItemSelectedListener navListener =
            new BottomNavigationView.OnNavigationItemSelectedListener() {
                @Override
                public boolean onNavigationItemSelected(@NonNull MenuItem item) {
                    Fragment selectedFragment = null;

                    switch (item.getItemId()) {
                        case R.id.home:
                            selectedFragment = new HomeFragment();
                            break;
                        case R.id.settings:
                            selectedFragment = new SettingsFragment();
                            break;
                        case R.id.devices:
                            selectedFragment = new DevicesFragment();
                            break;
                    }
                getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
                        selectedFragment).commit();

                    return true;
                }
            };

任何帮助都将不胜感激。

以后,请不要粘贴或链接代码图片。如果您只需从编辑器中复制代码并将其直接粘贴到您的问题中,对您来说更容易,对您寻求帮助的人来说也更方便。(对他们来说更方便意味着他们更有可能花时间帮助您。)