2
BottomNavigatioViewアイテムのタップを一度に制限するにはどうすればよいですか?誰かがアイテムをスパムしたときに自分のマップフラグメントをリロードする必要はありませんか?BottomNavigatioViewアイテムのタップを一度に制限するには、フラグメントをリロードしないでください。
fragmentManager = getSupportFragmentManager();
bottomNavigation.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
Fragment fragment = null;
Fragment currentFragment = fragmentManager.findFragmentById(R.id.main_container);
int id = item.getItemId();
switch (id){
case R.id.World:
if (!(currentFragment instanceof MapsFragment)) {
fragment = new MapsFragment();
}
break;
case R.id.Friends:
fragment = new FriendsFragment();
break;
case R.id.Chats:
fragment = new You_Fragment();
break;
}
final FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.replace(R.id.main_container, fragment).commit();
return true;
}
});
が、フラグメントが発生する、NullPointerをスローするので、それは動作しません:
私の現在のソリューションは、このいずれかです。
私は上記を達成するために何が変更できますか?
どの行がスローンnullポインタですか? –
transaction.replaceフラグメントは2番目のタップでnullなので – Ale4303