私のアプリケーションでNavigationDrawerを使用しています。ドロワーの各メニュー項目はフラグメントです。ユーザーがメニュー項目を選択すると、メインコンテナの現在のフラグメントを要求されたものに置き換えますが、毎回フラグメントを再作成します。既存のフラグメントを再利用するコードは、フラグメントの内容が同じであれば何度も繰り返し作成するのではなく、フラグメントを示すために私の更新されたコードは次のとおりです。既存のフラグメントを再作成するのではなく、FragmentManagerから再利用するにはどうすればよいですか?
public void showTabFragment() {
TabFragment Tf = (TabFragment) mFragmentManager.findFragmentByTag(Constants.TAB_FRAGMENT);
mFragmentTransaction = mFragmentManager.beginTransaction();
if (Tf != null) {
mFragmentTransaction.replace(R.id.containerView, Tf, Constants.TAB_FRAGMENT);
} else {
mFragmentTransaction.replace(R.id.containerView, new TabFragment(), Constants.TAB_FRAGMENT);
}
mFragmentTransaction.commit();
}
上記のコードでは、私は、タグによる断片を取得しようとしていますが、それは常にnullを返し、実行し、他のケース(新しいフラグメント)を.Could誰かが私を導いてください、私は何をやっています私のコードで間違っている?
単純にグローバルオブジェクトを使用することもできます。 – NishchalAndroid