私の問題は、複数のフラグメントでNavigationDrawerを使用していることです。私にはアクティビティがあります。私はその活動から特定の断片に戻ろうとしています。私は意図を送ろうとしました。それは動作しますが、バンドルの値がnullでないために常にそのフラグメントにとどまります。バンドルをヌルにする方法がある場合、またはあなたが意図よりも優れたソリューションを持っている場合、私は感謝します。皆さんありがとう。アクティビティからNavigationDrawerの特定のフラグメントにナビゲートする方法
この方法では、法の下に使用してバンドルをクリアすることができフラグメント
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);
}
this.getIntent()。setExtras(null)を試しましたか? –
setExtras()メソッドがありません! – Khalil
intent.putExtra( "key"、bundle)のようなキーを渡しました –