Mein Problem ist, dass ich NavigationDrawer mit mehreren Fragmenten verwende. Ich habe eine Aktivität. Ich versuche, von der Aktivität zum spezifischen Fragment zurückzukehren. Ich habe versucht, eine Absicht zu senden. Es funktioniert, aber es bleibt immer in diesem Fragment, da der Wert des Bündels nicht null ist. Also, wenn Sie einen Weg haben, wie Sie das Bündel null machen oder Sie eine bessere Lösung als die Absicht haben, werde ich dankbar sein. Danke, alles.So navigieren Sie zu einem bestimmten Fragment in NavigationDrawer von einer Aktivität
Diese Methode ist die Fragmente
public void DisplaySelectedScreen(int id) {
infoNom = this.getIntent().getExtras();
if (infoNom != null) {
id = Integer.valueOf(infoNom.getString("Fragment"));
}
infoNom = null ; //not Working
Fragment fragment = null;
switch (id) {
case R.id.nav_home:
fragment = new Home();
break;
case R.id.nav_info:
fragment = new Informations();
break;
case R.id.nav_cmd:
fragment = new Commandes();
break;
case R.id.nav_panier:
fragment = new Cart();
break;
case R.id.nav_contact:
fragment = new Contact();
break;
case R.id.nav_about_us:
fragment = new About_Us();
break;
case R.id.nav_logout:
ParseUser.logOut();
Intent intent = new Intent(Main.this, Welcome.class);
startActivity(intent);
break;
}
if (fragment != null) {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.content_frame, fragment);
ft.commit();
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
}
haben Sie versucht this.getIntent(). SetExtras (null)? –
gibt es keine setExtras() Methode !! – Khalil
Wenn Sie ein Bündel in der Absicht setzen, haben Sie einen Schlüssel wie intent.putExtra ("key", bundle) übergeben –