2015-06-30 7 views
17

W mojej działalności używam następującego kodu dla moich dwóch pasków narzędzi.Ustawianie menu dla wielu pasków narzędzi na Androidzie

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    // Creating The Toolbar and setting it as the Toolbar for the activity 
    toolbar = (Toolbar) findViewById(R.id.tool_bar); 
    setSupportActionBar(toolbar); 
    getSupportActionBar().setTitle("My title"); 

    toolbar2 = (Toolbar) findViewById(R.id.tool_bar_bottom); 
    setSupportActionBar(toolbar2); 
    ... 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.menu_main, menu); 
    return true; 
} 

chcę go używać menu_main.xml na górnym pasku narzędzi i menu_bottom na dolnym pasku, ale zarówno dla górnej i dolnej paska to wykorzystuje menu_main.xml.

Czy ktoś może wyjaśnić, jak zrobić to poprawnie?

+0

możliwy duplikat nie działającej ikony paska narzędzi Android Toolbar (http://stackoverflow.com/questions/31128809/android- toolbar-action-icon-not-working) – Elltz

+0

@Elltz jak udało ci się znaleźć duplikat? –

+0

jako, kod w pytaniu jest dokładnie taki sam jak drugi- (również nazwy zmiennych), także oni wszyscy patrzą na/dla tego samego rozwiązania, nawet jeśli tytuł może nie być przekonujący, więc jego albo dupe tego lub dupe to, i dlaczego nie jesteś o tym przekonany Sir? @PareshMayani – Elltz

Odpowiedz

44

Gdy używasz dwóch ToolBar s ustawić menu jak to

toolbar = (Toolbar) findViewById(R.id.tool_bar); 
setSupportActionBar(toolbar); 
getSupportActionBar().setTitle("My title"); 

Powyższa pasek menu nadmuchać z onCreateOptionsMenu menu CallBack słuchacz będzie onOptionsItemSelected

Teraz drugie ToolBar

toolbar2 = (Toolbar) findViewById(R.id.tool_bar_bottom); 
toolbar2.inflateMenu(R.menu.bottom_menu);//changed 
//toolbar2 menu items CallBack listener 
toolbar2.setOnMenuItemClickListener(new OnMenuItemClickListener() { 

    @Override 
    public boolean onMenuItemClick(MenuItem arg0) { 
     if(arg0.getItemId() == R.id.item_id){ 

     } 
     return false; 
    } 
}); 
+0

Dzięki dla odpowiedzi, ale mam ten błąd: 'Błąd: (37, 49) błąd: nie można znaleźć symbolu klasy OnMenuItemClickListener' i' item_id' w moim debugerze ma kolor czerwony. – partiz

+0

oraz warunek "jeśli" jest pusty! przepraszam noob w Androidzie .... ale czy to prawda? – partiz

+0

i gdzie zdefiniuj "bottom_menu" dla 'tool_bar_bottom' – partiz

Powiązane problemy