アクションバーとアクションバー タブを含むアクティビティがあります。タブのコンテンツからアイテムを選択すると、現在のフラグメントを新しいフラグメントに置き換え、トランザクションをバックスタックに追加し、タブを非表示にしようとしています。
アクション バーのナビゲーション モードを標準に変更して、タブを非表示にします。
問題は、[戻る] ボタンを押すと、(標準モードで) アクション バーが表示された空白のビューしか表示されないことです。フラグメント トランザクションが逆になっているようには見えません。
ナビゲーション モードを標準に変更してタブを非表示にしない場合、トランザクションの取り消しは正常に機能します。
バック プレスをオーバーライドして、ナビゲーション モードをタブに戻そうとしましたが、うまくいきません。
誰かがこれをどのように達成するか教えてもらえますか?
タブが非表示になり、フラグメント トランザクションが発生するコードは次のとおりです。
ActionBar actionBar = getActivity().getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
Fragment albumListFragment = new AlbumListFragment();
albumListFragment.setArguments(bundle);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(android.R.id.content, albumListFragment);
ft.addToBackStack(null);
// Commit the transaction
ft.commit();
明確にするために、このトランザクションがコミットされた後に押し戻すと、タブが前のフラグメントで表示されると予想されます。押し戻した瞬間、タブまたはフラグメントが表示されません。