..


Link-uri sponsorizate

Meniu: ContextMenu

În capitolele anterioare am analizat în detaliu IconMenu meniul de tip, care sunt, în general, cele mai folosite. O altă resursă care ne oferă Android este ContextMenu care poate fi împreună catalogheaza ca structura şi funcţionarea, în meniul care apare când faceţi clic pe butonul din dreapta al mausului pe orice pictograma Windows.

Faptul ContextMenu nu este afişată pentru utilizator, după o apăsare a unui buton de pe aparat (cum a fost pentru IconMenu), dar este asociat cu un widget special, este afişat pentru utilizator, şi după o prelungită clic-dreapta pe acest widget.

Evident, în cadrul unei activităţi, aveţi posibilitatea să creaţi ContextMenu şi apoi le asocia cu widget-uri diferite diferite, sau să creaţi un ContextMenu unic este asociat cu mai multe widget-uri diferite.

Suntem acum de gând să arată codul necesar pentru a crea două tipuri diferite şi apoi asocia un ContextMenu cu un buton si o alta la o TextView (înainte de a vă introduceţi codul de care aveţi nevoie pentru a importa android.view.ContextMenu pachet .*):






 onCreate public void (lot savedInstanceState) {



  



 super.onCreate (savedInstanceState);

  

  



 LinearLayout mioLayout LinearLayout = new (această);

 

  

  



 Butonul = new Button (aceasta);

 

  



 bottone.setId (1);



  



 button1.setText ("asociată cu un buton de meniu");

 

        

  



 TextView tv = new TextView (aceasta);



  



 tv.setText ("Dati un click pentru ContextMenu prelungit");



  



 tv.setId (2);



  

  



 mioLayout.addView (buton);



  



 mioLayout.addView (TV);



  



 setContentView (layout);



  

  



 registerForContextMenu (buton);

 

  



 registerForContextMenu (TV);







 }









 onCreateContextMenu public void (ContextMenu ContextMenu, Vedere, ContextMenuInfo menuInfo) {



  



 dacă (view.getId () == 1) {



    



 menu.setHeaderTitle ("butonul ContextMenu");



    



 menu.add (Menu.NONE, 1, 1, "Vocea butonul 1");



    



 menu.add (Menu.NONE, 2, 2, "butonul de voce 2");



  



 }



  



 else if (view.getId () == 2) {



    



 menu.setHeaderTitle ("ContextMenu de TextView");



    



 menu.add (Menu.NONE, 3, 1, "punctul 1 TextView");



    



 menu.add (Menu.NONE, 4, 2, "Postul 2 TextView");



  



 }







 }



Noi analizăm codul propus. În ceea ce priveşte conţinutul metodei onCreate doar liniile de cod vazut vreodata sunt cele referitoare la invocarea metodei care combină registerForContextMenu, a trecut ca un parametru la widget-ului, orice ContextMenu.

De un interes mai mare este că metoda onCreateContextMenu în loc de soarta, conţine codul pentru ContextMenu pe care vrem să creăm. În acest caz, pentru a crea un meniu diferit pentru cele două widget-uri, am utilizat metoda getId () consideră că a invocat onCreateContextMenu metoda (setarea ID-ul dintre cele două widget-uri se realizează cu ajutorul metodei onCreate setId ()).

Dacă vom merge în interior pentru a adăuga la elementele de meniu ne-o dorim cu metoda obişnuită folosind consola şi se adaugă metoda de a seta o ContextMenu setHeaderTitle titlu.

În scopul de a asocia un comportament specific la o presiune de unul din butoanele de pe meniul pe care se lucrează în acelaşi mod văzut în capitolul precedent, cu toate acestea, pentru OptionMenu introducerea codului de dorit în cadrul metodei onContextItemSelected (MENUITEM articol).

Ajutor dezvolta aplicatii pentru Android
E-Learning
ASP Zero (Ebook) ASP Zero (Ebook)
Microsoft Learning ASP şi VBScript de la zero. La doar 29 €.
ASP şi Access (Ebook) ASP şi Access (Ebook)
Gestionarea unei baze de date MS Access cu ASP. La doar 29 €.
HTML (Curs) HTML (Curs)
Limbajul de marcare pentru Web de la 29 €.
Link-uri sponsorizate