Backstackchange上的箭头图标代替汉堡图标

时间:2018-07-01 22:06:26

标签: android android-fragments fragment-backstack

我有以下代码,当我向MainActivity添加或删除片段时会执行该代码。

 getSupportFragmentManager().addOnBackStackChangedListener(
            new FragmentManager.OnBackStackChangedListener() {
                public void onBackStackChanged() {
                   if(getSupportFragmentManager().getBackStackEntryCount() > 1) {
                        getSupportActionBar().setDisplayShowHomeEnabled(true);
                        mDrawerToggle.setDrawerIndicatorEnabled(false);
                        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
                        mDrawerToggle.syncState();
                    }
                    else
                    {
                        getSupportActionBar().setDisplayShowHomeEnabled(true);
                        getSupportActionBar().setDisplayHomeAsUpEnabled(false);
                        mDrawerToggle.setDrawerIndicatorEnabled(true);
                        mDrawerToggle.syncState();
                    }
                }
            });

一切正常,除了我运行下面的代码返回片段。执行以下代码后,它仍然显示箭头图标而不是汉堡图标。我什至尝试删除所有片段,然后再次将家庭片段添加到堆栈中。还是同样的问题。

   for(int i = 1; i < fragmentManager.getBackStackEntryCount(); ++i) {
            fragmentManager.popBackStack();
        }

0 个答案:

没有答案