我有3个片段片段1,片段2和片段3,导航就像
碎片1->碎片2->碎片3
但在完成一些任务(如从碎片2)后,从碎片3返回碎片2。从碎片1开始完成这个活动。
做这项工作的最佳方法是什么?
最佳答案
根据您的问题,您只需在addToBackStack()
事务之前添加commit()
方法。
例如:
FirstFragment firstFragment = new FirstFragment();
getSupportFragmentManager().beginTransaction()
.replace(R.id.article_fragment, firstFragment)
.addToBackStack(null).commit();
按照上述方式添加第二和第三个片段,只需在override方法中添加代码。
例如:
@Override
public void onBackPressed() {
if (getFragmentManager().getBackStackEntryCount() > 0) {
getFragmentManager().popBackStack();
} else {
super.onBackPressed();
}
}