2017-07-21 5 views
0

私はほとんどすべてを試しましたが、何も動作していないようです。 A - ビューページ B - リストビュー C - リストビュー ここでBとCでは、listviewはそれぞれが独自のフラグメントを持つクリック可能なアイテムです。したがって、ListViewAにはフラグメントがあり、ListViewBにはフラグメントがあります。 適切なバックナビゲーションが必要です。ナビゲーションドロワーを初期化するとき、これは、私はそれをやっている方法です:ナビゲーションドロワーネストされたフラグメント

Fragment fragment = getHomeFragment(); 
       FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction(); 
       fragmentTransaction.setCustomAnimations(android.R.anim.fade_in, 
         android.R.anim.fade_out); 
       fragmentTransaction.replace(R.id.frame, fragment, CURRENT_TAG); 
       fragmentTransaction.commit(); 

そして、リストビューからオプションを選択する:私は両方のトランザクションでaddtoBackStack()を入れた場合

final FragmentTransaction ft = getFragmentManager().beginTransaction(); 
       ft.setCustomAnimations(android.R.anim.fade_in, 
         android.R.anim.fade_out); 
       ft.replace(R.id.frame, new FragmentB(),"HubSettings"); 
       ft.addToBackStack(null); 
       ft.commit(); 

を、バックナビゲーション作品ナビゲーション・ドロワのタイトルが正しく設定されていません。戻るボタンを無効にして、アクションバーのタイトルが正しく設定されるように、ナビゲーションドロワーからフラグメントを変更するようにします。 CFragmentについては、どのようにして戻るボタンを無効にするのですか?

一つは、メニューから行くことができますように: - >戻るBフラグメントに - ナビゲーションDrawer-> B Fragment->リストビューオプション1断片 戻る押す>を無効戻るボタン

答えて

0

ちょうどあなたの活動にonBackPressedを上書きこのような断片を含む:

@Override 
public void onBackPressed() { 

    int count = getSupportFragmentManager().getBackStackEntryCount();  

    if (count > 0) { 
     getSupportFragmentManager().popBackStack(); 
     updateDrawerToggle();    
    } 

} 
関連する問題