我正在使用片段活动和一些片段来添加并在背面加载。
假设我正在从片段A添加片段B.我在A中设置的操作栏的标题通过导航到B来改变;但是当我从片段堆栈中弹出片段B时,它不会恢复到A,因为片段的onResume没有被调用。
我正在使用代码:
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().add(R.id.container, fragmentToReplace, tag).addToBackStack(tag).commit();
并弹出最后一个片段:
fragmentManager.popBackStack();
如何管理这个。请建议。
答案 0 :(得分:0)
您可以使用onBackStackChanged
侦听器,只要弹出片段就会调用该侦听器。要添加侦听器,请使用以下命令:
getFragmentManager().addOnBackStackChangedListener(this);
在“覆盖”功能中,检查弹出的片段,根据它可以更改操作栏标题:
@Override
public void onBackStackChanged() {
//Check the fragment from the FrameLayout Container R.id.container
// Depending on the Fragment you can change the Title
setTitle("xyz");
}