簡體   English   中英

Android保存后退片段歷史記錄

[英]Android save backstack fragment history

我放入了堆棧片段:A-> B-> C-> D,其中A是活動的起始片段。 按下主頁按鈕后,使用其他應用程序並返回我的應用程序,活動重新啟動,並且看到片段A。如何保存所有Backstack歷史記錄?

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();

如果有幫助的話-我使用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));

在執行事務之前,請調用addToBackStack(null)方法。 結果,實際上什么都沒有添加到堆棧中。 嘗試

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();

代替

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM