所以我有一個片段的活動,片段有一個導航抽屜和頁面的內容。當我打開抽屜並單擊一個項目時,片段被替換爲新的片段。當我按下後退按鈕時,我在片段管理器上調用popBackStack,並返回到第一個片段,但導航抽屜已打開。導航抽屜彈出片段後臺後打開
有幾件事需要注意:按下抽屜中的物品時,我會在抽屜佈局上調用closeDrawers,並在替換碎片時關閉抽屜。如果我按下操作欄中的UP按鈕,我可以用新的主片段替換片段容器,但是我希望能夠將片段從堆棧中彈出。
爲什麼當我回到主碎片時抽屜會打開?
在點擊監聽器抽屜物品:
case 4:
drawerLayout.closeDrawers();
Fragment aboutFragment = new AboutFragment();
fragmentTransaction.replace(R.id.fragment_container, aboutFragment, "AboutFragment");
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
break;
這是向上操作欄中的箭頭,這工作,但哈克:
case android.R.id.home:
getFragmentManager()
.beginTransaction()
.replace(R.id.fragment_container, new MainActivityFragment())
.commit();
break;
我已經試過了不幸取代
。它仍然顯示它是開放的 – Stampede10343
您是否將它作爲您的導航抽屜的最後一個聲明? –
或者您可以做的另一件事是在後退按鈕代碼中彈出()後關閉導航抽屜 –