..


Gesponsorde links

Menu: optiemenu Association en een luisteraar

In deze les gaan we analzizare all'OptionsMenu de code die we gemaakt in de vorige les.

De code binnen de methode onCreate, op dit punt van de gids, duidelijk moet worden begrepen door de lezer en het is daarom bewust weggelaten in de analyse. In plaats daarvan onze aandacht richten op een nieuwe methode die we nog niet had gezien dat de methode OnCreateOptionMenu (Menu menu).

Deze methode wordt automatisch aangeroepen door de activiteit zodra de gebruiker de menu-knop of de fysieke apparaat simulator klikken. Standaard is het menu is leeg en het is daarom noodzakelijk om de methode hierboven weergegeven om een ​​persoonlijk menu te bekijken herdefiniëren. Zoals we kunnen zien retourneert de methode een Booleaanse waarde: true effect zal zijn om de activiteit in kennis te stellen het menu weer te geven, terwijl valse heeft het tegenovergestelde effect (het menu wordt niet weergegeven).

Doorgaan met de analyse van de code vinden we de methode waarmee u een item toevoegen aan het menu te creëren we. Het prototype van deze methode is als volgt:

 



 toe te voegen (int groupid, int itemId, int orde, CharSequence titel)

 
  • Groupid parameter is een parameter die de groep het lidmaatschap van de menu-item (in ons geval gebruikten we Menu.NONE omdat we niet willen aan een groep te gebruiken) geeft;
  • itemId geeft aan dat de id geassocieerd te worden met het menu-item (nuttig zal zijn in het proces te bepalen welke menu-item de gebruiker heeft geklikt);
  • Om wordt gebruikt om de locatie van het menu-item in het menu zelf te geven;
  • titel geeft de tekst string die wordt weergegeven aan de gebruiker.

Zoals we al zeiden kun je de tekst vervangen door een afbeelding van het menu-item. In dit geval moet u importeren de klasse anroid.view.MenuItem en vervang de code voor het toevoegen van een menu-item met de volgende:






 Voce1 menu.add menuitem = (Menu.NONE, 1, 1, "voce1");

 





 voce1.setIcon (R.drawable.icon);



Zoals we kunnen zien moet je een menuitem met behulp van de add gepresenteerde methode eerste paar alinea's maken en vervolgens de methode setIcon beroepen op dit nieuwe object.

Associëren we een luisteraar op elk menu-item

En 'mogelijk is, naar aanleiding van de techniek reeds gebruikt met de knoppen, maakt u een object van het type menuitem, associate een luisteraar, en dan overschrijven de methode die de klik vastlegt.
In deze gids zullen echter presenteren wij een andere methode, eenvoudiger en gemakkelijker te implementeren, die de eerste uitvoering van het menu te gebruiken (de een zonder de verklaring van de menukeuze) en voegen we de methode onOptionsItemSelected (menuitem item) dat is de luisteraar die u moet gebruiken voor de menu's. Nu laten we zien de code toe te voegen:






 openbare boolean onOptionsItemSelected (menuitem item) {

 

  



 int id = item.getItemId ();

    

  



 schakelaar (id) {



    



 case 1:



      



 textView.setText ("Ik klikte op de" + id + "menu");



      



 te breken;



    

    



 case 2:



      



 textView.setText ("Ik klikte op de" + id + "menu");



      



 te breken;



  



 }







 }



Om redenen van ruimte zijn we erin geslaagd klikt u gewoon op de eerste twee menu-items, laat je als een oefening aan de lezer de voltooiing van de zaak.
De code is erg simpel feit is opgeslagen in de variabele id het ID-nummer dat hoort bij het ​​menu-item dat werd geklikt. Dit wordt gedaan met de oproep, object item, de methode getId ().
Binnen elk geval zullen wij voegen de code die modellen het gedrag van de toepassing op de klik van het menu-item dat een andere activiteit meestal vervanging van de huidige gesprekken (we zullen later zien hoe).

Helpen bij het ontwikkelen applicaties voor Android
E-Learning
CSS (Cursus) CSS (Cursus)
Web Design en toegankelijkheid volgens de W3C CSS en XHTML. Vanaf 29 €.
Photoshop (Cursus) Photoshop (Cursus)
Web graphics en foto's bewerken met de populaire Adobe Photoshop. Van 49 €.
Web Design (Course) Web Design (Course)
Design Web Sites met HTML, CSS en Dynamic HTML. Van 39 €.
Gesponsorde links