2016-12-05 66 views
0

我試圖讓下面的兩個功能一起工作:每個片段如何設置主細節流程+拆分工具欄?

  1. 左抽屜導航
  2. 獨立的工具欄在屏幕上

你可以看到這個工作,如Gmail應用: enter image description here

看看每個窗格如何擁有自己的工具欄?我的意思是,「搜索」圖標右對齊左邊的片段。除此之外,我還需要這個以便爲每個窗格分別設置標題。

如果沒有左側抽屜導航,這將非常容易。您只需擺脫Activity上的工具欄並在每個Fragment上使用一個工具欄即可完成。 但左抽屜導航的東西變得有點混亂,你需要在activity 爲了實現它。

一個可能的解決方案,我想用內部片段像這樣的左窗格中的: enter image description here

這在理論上應該工作,但我已經在過去使用內部片段,他們是沒有樂趣。如果可能,我真的很想避開它們。另外,設計師們正在考慮在將來刪除左窗格導航,所以我不得不做大量的重構,因爲這樣我就不會做任何事情......

(PS:我知道你可以在片段上創建setHasOptionsMenu來創建從活動+任何可見的片段的「組合拳」工具欄項目,但是這不是真的是我要找的)

回答

0

嗯,我已經能夠完全解決這個問題,避免內部片段:d

這是我如何設置它,以防某人有同樣的問題:

  1. 每個分段管理自己的工具欄

  2. 活動管理導航抽屜

添加這個方法將你activity

private ActionBarDrawerToggle toggle; 

    public void setupNavDrawer(Toolbar toolbar) { 
    drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
    toggle = new ActionBarDrawerToggle(
      this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); 
    drawer.addDrawerListener(toggle); 
    drawer.addDrawerListener(this); 
    toggle.syncState(); 
} 

而且從它的工具欄應該有Fragment叫它漢堡菜單

這就是這樣我activity_main.xml樣子:

https://gist.github.com/feresr/66aaf9c92173d6414e4ba9df7366f77c

這是爲我工作,讓我知道,如果你有任何疑問,我會盡力幫助你:)