私は今、3つの断片を持っています。 1つはメインフラグメント2つ目はプロファイルフラグメントで、もう1つはプロファイル編集フラグメントです。今次のフラグメントから最後にポップアップしたフラグメントにナビゲートするにはどうすればよいですか?
fragmentManager = getSupportFragmentManager();
DashboardFragment fragment1 = new DashboardFragment();
Bundle bundle = new Bundle();
fragment1.setArguments(bundle);
fragmentManager.popBackStack(null,FragmentManager.POP_BACK_STACK_INCLUSIVE);
fragmentManager.beginTransaction().replace(R.id.frame, fragment1, "DASHBOARD_FRAGMENT").commitAllowingStateLoss();
私はこのようなフラグメントをプロファイルへのナビゲートしています主なフラグメントから:
MainFragmentは、このように呼ばれています。
私はこのような編集フラグメントをプロファイルへのナビゲートしていたプロファイルフラグメントから今 fragmentManager = ((MainActivity)(mContext)).getSupportFragmentManager();
ProfileFragment fragment1 = new ProfileFragment();
Bundle bundle = new Bundle();
fragment1.setArguments(bundle);
fragmentManager.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
fragmentManager.beginTransaction().replace(R.id.frame, fragment1, "PROFILE_FRAGMENT").addToBackStack("B").commit();
:
fragmentManager = getActivity().getSupportFragmentManager();
ProfileEditFragment fragment1 = new ProfileEditFragment();
Bundle bundle = new Bundle();
fragment1.setArguments(bundle);
fragmentManager.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
fragmentManager.beginTransaction().add(R.id.frame, fragment1, "PROFILE_EDIT_FRAGMENT").addToBackStack("C").commit();
今ナビゲーションが編集フラグメントをプロファイルするフラグメントをプロファイリングし、プロファイルの断片から、メインの断片からのようなものです。
私はプロファイル編集フラグメントから戻ると、ブランクを示すメインフラグメントに直接行きます。プロファイル編集フラグメントから押されたバックのプロファイルフラグメントに行き、プロファイルフラグメントのバックプレスでメインフラグメントに戻ります。
私は主なアクティビティでonBackPressedメソッドを持っていますが、うまく機能しません。
@Override
public void onBackPressed() {
// Do nothing if the back button is disabled.
if (!mBackPressCancelled) {
if (getFragmentManager().getBackStackEntryCount() > 0) {
getFragmentManager().popBackStackImmediate();
}
else {
super.onBackPressed();
}
}
}
何が問題になりますか?助けてください。ありがとうございました..
まだ私はメインの断片に行きます、それは空です。私は代わりにフラグメントを追加しようとしましたが、動作しませんでした。 – Sid
申し訳ありません。 'replace()'の前に 'popBackStack()'をすべて削除する必要があると言います。 – BakaWaii