我是 android 的初学者,我无法理解为什么我会出错。当我单击主页按钮(底部导航栏)时,我收到此错误。我正在使用共享首选项来保存我的值,但是当检索到该值时,就会出现错误。
我的活动代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getLastLocation();
binding.bottmNav.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.home1: //when i m clicking here
setFragment(homeFragment);
SharedPreferences shprefs = getSharedPreferences(prefs, MODE_PRIVATE);
SharedPreferences mprefs = getSharedPreferences(myprefs, MODE_PRIVATE);
String savedvalue = shprefs.getString("savedvalue", null);
String savedcountry = mprefs.getString("savedcountry", null);
if ((savedvalue != null && savedvalue.equals("India")) || savedcountry.equals("India")) {
newsModels.clear();
binding.bottmNav.getMenu().findItem(R.id.location).setTitle("India");
binding.bottmNav.getMenu().findItem(R.id.home1).setChecked(true);
setindianewsdata();
setindiashopdata();
setFragment(homeFragment);
} else if (savedvalue.equals("Usa") || savedcountry.equals("Usa")) {
newsModels.clear();
setusanewsdata();
setusashopdata();
setFragment(homeFragment);
binding.bottmNav.getMenu().findItem(R.id.location).setTitle("USA"); …Run Code Online (Sandbox Code Playgroud)