Ich habe drei Registerkarten, in einem Tab fordere ich Daten Formular Backend. Wenn Sie diese Registerkarten erneut anklicken, wird es erneut geladen. Ich möchte, wenn ich Fragment neu laden, alle Dinge in listView im Speicher neu laden. Mein Code wie folgt aus:Wie wird das Statusfragment in Tabs nicht neu geladen?
BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
navigation.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
Fragment fragment = null;
switch (item.getItemId()) {
case R.id.navigation_home:
fragment = FirstFragment.newInstance();
break;
case R.id.navigation_dashboard:
fragment = SecondFragment.newInstance();
break;
case R.id.navigation_notifications:
fragment = ThreeFragment.newInstance();
break;
}
if (fragment != null) {
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.content, fragment);
fragmentTransaction.commit();
}
return true;
}
});
Aber wenn ich Symtems.print.out ich sehe Ergebnis: - Tab1 geklickt
I/System.out: onCreate main
I/System.out: onAttach 1
I/System.out: onCreate 1
I/System.out: onCreateView 1
I/System.out: onResume main
I/System.out: onResume 1
-Tab2
geklicktI/System.out: onAttach 2
I/System.out: onCreate 2
I/System.out: onDetach 1
I/System.out: onCreateView 2
I/System.out: onResume 2
-Reclick Tab 1:
I/System.out: onAttach 1
I/System.out: onPause 2
I/System.out: onDetach 2
I/System.out: onCreateView 1
I/System.out: onResume 1
wh en reclick a tabs alle fragment lifecyle run wieder dafür mein code load backend run wieder. Wie kann ich etwas wie Fragment onPause behalten, wenn andere Tabs klicken und OnResume, wenn es erneut klickt ?.
Ich versuche dies, aber rootView immer Null, wenn die Registerkarte "Zurücksetzen". –