我仍然是一名新的App开发人员,并尝试了我的第一个应用程序。
我有一个应用程序,主要活动有三个菜单按钮,一个按钮指向一个片段,在该片段中,还有另一个按钮创建并显示另一个片段。 所以就是这样 活动 - >片段1 - > Fragment2 我尝试使用后退按钮从Fragment2导航到Fragment 1。 我使用了getActivity()。onBackPressed()。 问题是当它应该导航回Fragment 1时,它会一直跳回到Activity。
我需要使用哪种方法覆盖或仅用于从F2导航回F1?
提前谢谢你。
答案 0 :(得分:0)
添加片段时,也要将它们添加到backStack中。这将允许您播放已添加的片段,然后您可以在onBackPressed
中处理它们。
@Override
public void onBackPressed() {
FragmentManager fragmentManager = getSupportFragmentManager();
if (fragmentManager.getBackStackEntryCount() < 1){
Fragment fragment = new XXXFragment();
FragmentTransaction fragmentTransaction =
getSupportFragmentManager().beginTransaction();
getSupportActionBar().setTitle(mDrawerTitle);
fragmentTransaction.replace(R.id.frame_container,
fragment).addToBackStack("first").commit();
}else{
finish();
}
}