私の主な活動では、私はNAVIGATION_MODE_TABS
のアクションバーを持っています。各タブの内容はリストフラグメントです。フラグメント取引、アクションバー&バックスタック
リストアイテムをクリックすると、新しいフラグメントが表示され、アクションバーモードがNAVIGATION_MODE_STANDARD
に変更され、タブが非表示になるようにしたいと考えています。
:listitemclick方法で
:
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();
Log.i("FragmentList", "Item clicked: " + id);
問題は、私は戻ってボタンを押すと、タブがまだ、なくなっているです前の断片は再び見えません。
私は何か間違っていますか?断片のバックスタックとは何か?私はそれを別の方法で行くべきか、あるいはバックプレスをオーバーライドする必要がありますか?明確にするために
--Edit--
- 私はfragmenttransaction.replaceを呼び出すときaddToBackStackを呼び出していますが、私は戻ってボタンを押すと、前の断片が復元されません。
一度このリンクを確認してください。http://www.vogella.com/articles/Android/article.html#fragments_tutorial – shassss
ありがとうございますが、この質問には特に役に立ちません。 –
addToBackStackを使用すると、あなたは何をしたいですか? 'ft.addToBackStack(null);の代わりにhttp://developer.android.com/guide/components/fragments.html#Transactions – Frohnzie