BottomNavigationView 为空
BottomNavigationView is null
我在实施 BottomNavigationView
、
时出现运行时异常
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
这是我的代码:
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.Fragment;
import android.os.Bundle;
import android.util.Log;
import android.view.MenuItem;
import com.google.android.material.bottomnavigation.BottomNavigationView;
public class MainActivity extends AppCompatActivity {
private BottomNavigationView bottom_nav;
@Override
protected void onCreate(Bundle savedInstanceState) {
bottom_nav= findViewById(R.id.bottom_nav);
getSupportFragmentManager().beginTransaction().add(R.id.fragTutucu, new Frag1());
bottom_nav.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
Fragment fragment = null;
switch (menuItem.getItemId()){
case R.id.manuel:
fragment= new Frag1();
return true;
case R.id.photo:
fragment= new Frag2();
return true;
case R.id.training:
fragment= new Frag3();
return true;
}
getSupportFragmentManager().beginTransaction().replace(R.id.fragTutucu,fragment);
return true;
}
});
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
您试图在设置 activity 视图之前找到 BottomNavigationView。您应该先设置内容视图。
重新组织您的代码如下
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// everything other
}
您好,您没有提供任何对 XML 文件的引用
在 onCreate 方法的开头包含这些行
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
我在实施 BottomNavigationView
、
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
这是我的代码:
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.Fragment;
import android.os.Bundle;
import android.util.Log;
import android.view.MenuItem;
import com.google.android.material.bottomnavigation.BottomNavigationView;
public class MainActivity extends AppCompatActivity {
private BottomNavigationView bottom_nav;
@Override
protected void onCreate(Bundle savedInstanceState) {
bottom_nav= findViewById(R.id.bottom_nav);
getSupportFragmentManager().beginTransaction().add(R.id.fragTutucu, new Frag1());
bottom_nav.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
Fragment fragment = null;
switch (menuItem.getItemId()){
case R.id.manuel:
fragment= new Frag1();
return true;
case R.id.photo:
fragment= new Frag2();
return true;
case R.id.training:
fragment= new Frag3();
return true;
}
getSupportFragmentManager().beginTransaction().replace(R.id.fragTutucu,fragment);
return true;
}
});
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
您试图在设置 activity 视图之前找到 BottomNavigationView。您应该先设置内容视图。
重新组织您的代码如下
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// everything other
}
您好,您没有提供任何对 XML 文件的引用 在 onCreate 方法的开头包含这些行
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);