アプリケーションのカスタムメニューを作成する必要があったため、アプリの下部にアクションバーのように機能するフラグメントを作成しました。
しかし、スタックとの競合がいくつかあります(戻るボタンを押したとき)。
次の方法をどのようにプログラムすればよいですか?
public void changerContenu(int frameLayout, Fragment frag, boolean ajouterAuStack)
{
if(R.id.frameContent != frag.getId())
// * if the current displaying
// fragment in the layout is the same as the one that I received in param#2 (frag),
// then don't do anything.
{
ft = fragmentManager.beginTransaction();
ft.replace(frameLayout, frag);
if(ajouterAuStack)
ft.addToBackStack(null);
ft.commit();
}
}
私の「if」は今のところ意味がないことを知っています。目的の結果を得る方法を見つけようとしています:(今、フラグメントに一度アクセスすると(そしてスタックにプッシュされると)、を使用して再アクセスすることはできません。スタックをクリーンアップするために戻るボタンを数回押すまで、「自家製アクションバー」のボタン。
メニューの同じボタンを数回クリックした場合にのみ、スタック内のアイテムを複製したくない...
みんなありがとう!