android – 从Fragment处理OnBackPress
作者:互联网
我有3个片段Fragment1,Fragment2和Fragment3,导航就像
Fragment1->Fragment2->Fragment3
但是在背面按下Fragment3,在完成Fragment2之类的任务之后回到Fragment2.并从Fragment1完成此活动.
什么是最好的方法来完成这项任务.
解决方法:
根据您的问题,您必须在commit()事务之前添加addToBackStack()方法.
例如:
FirstFragment firstFragment = new FirstFragment();
getSupportFragmentManager().beginTransaction()
.replace(R.id.article_fragment, firstFragment)
.addToBackStack(null).commit();
添加与上述方式相同的第二个和第三个片段,只需在onBackPressed()覆盖方法中添加代码.
例如:
@Override
public void onBackPressed() {
if (getFragmentManager().getBackStackEntryCount() > 0) {
getFragmentManager().popBackStack();
} else {
super.onBackPressed();
}
}
标签:android,android-fragments,fragment-backstack 来源: https://codeday.me/bug/20190828/1748662.html