[英]Android save backstack fragment history
I put in backstack fragments: A->B->C->D, where A is starting fragment for activity. 我放入了堆栈片段:A-> B-> C-> D,其中A是活动的起始片段。 After pressed home button, use other apps and return in my app, activity restarted and i see fragment A. How can i save all history of backstack?
按下主页按钮后,使用其他应用程序并返回我的应用程序,活动重新启动,并且看到片段A。如何保存所有Backstack历史记录?
code example for addbackstack: addbackstack的代码示例:
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction().addToBackStack(null) .setCustomAnimations(R.animator.slide_in_left,R.animator.slide_out_right,0,0)
.replace(R.id.container, new SettingsContentFragment(item))
.commit();
if it can help - i use NavigationDrawerFragment, part of my onCreate in activity: 如果有帮助的话-我使用NavigationDrawerFragment,这是我的onCreate活动的一部分:
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
saveToolbar = (Toolbar) findViewById(R.id.toolbar);
if (saveToolbar != null) {
setSupportActionBar(saveToolbar);
}
saveToolbar.setNavigationIcon(R.drawable.ic_ab_drawer);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);
mNavigationDrawerFragment = (NavigationDrawerFragment)
getSupportFragmentManager().findFragmentById(R.id.navigation_drawer);
mNavigationDrawerFragment.customSetArguments(items);
mTitle = getTitle();
mNavigationDrawerFragment.setUp(
R.id.navigation_drawer,
(DrawerLayout) findViewById(R.id.drawer_layout));
You call addToBackStack(null)
method before you perform a transaction. 在执行事务之前,请调用
addToBackStack(null)
方法。 As a result nothing is actually added to back stack. 结果,实际上什么都没有添加到堆栈中。 Try
尝试
fragmentManager.beginTransaction()
.setCustomAnimations(R.animator.slide_in_left,R.animator.slide_out_right,0,0)
.replace(R.id.container, new SettingsContentFragment(item))
.addToBackStack(null)
.commit();
instead 代替
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.