..
V predchádzajúcich kapitolách sme sa podrobne analyzoval typ ponuky IconMenu, ktoré sú všeobecne najpoužívanejšie. Ďalší zdroj, ktorý nám ponúka, je Android ContextMenu, ktorá môže byť prežitý ako štruktúry a fungovania, ponuke, ktorá sa zobrazí po kliknutí pravým tlačidlom myši na ľubovoľnú ikonu Windows.
ContextMenu fakt nie je preukázané, že užívateľ po stlačení tlačidla na zariadení (ako to bolo pre IconMenu), ale je spojená s konkrétnou widget zobrazí užívateľovi, a po dlhšej kliknite pravým tlačidlom myši na tento widget.
Samozrejme, v rámci činnosti, môžete vytvoriť ContextMenu a priradiť im rôzne pomôcky, alebo vytvorenie jednotného ContextMenu je spojené s niekoľkými rôznych widgetov.
Teraz sa bude zobrazovať kód potrebný na vytvorenie dvoch rôznych, a potom sa spojiť ContextMenu s tlačidlom a iný TextView (pred zadáte kód, ktorý potrebujete importovať balíček android.view.ContextMenu .*)
public void onCreate (zväzok savedInstanceState) {
super.onCreate (savedInstanceState);
LinearLayout mioLayout LinearLayout = new (this);
Tlačidlá = new Button (this);
bottone.setId (1);
button1.setText ("spojené s tlačidlo MENU");
TextView tv = new TextView (this);
tv.setText ("Daj kliknite na dlhší ContextMenu");
tv.setId (2);
mioLayout.addView (tlačidlo);
mioLayout.addView (TV);
setContentView (layout);
registerForContextMenu (tlačidlo);
registerForContextMenu (TV);
}
public void onCreateContextMenu (ContextMenu ContextMenu, Výhľad, ContextMenuInfo menuInfo) {
if (view.getId () == 1) {
menu.setHeaderTitle (ďalej len "ContextMenu tlačidlo");
menu.add (Menu.NONE, 1, 1, "Voice tlačidlo 1");
menu.add (Menu.NONE, 2, 2, "Voice tlačidlo 2");
}
else if (view.getId () == 2) {
menu.setHeaderTitle ("ContextMenu z TextView");
menu.add (Menu.NONE, 3, 1 ", bod 1 TextView");
menu.add (Menu.NONE, 4, 2 ", bod 2 TextView");
}
}
Analyzujeme navrhnuté kód. Čo sa týka obsahu tejto metódy onCreate iba riadky kódu, kedy videl sa vzťahujú na vyvolanie tejto metódy, ktorá kombinuje registerForContextMenu, odovzdaný ako parameter widget, žiadne ContextMenu.
Väčšieho záujmu je, že metóda onCreateContextMenu miesto osudu, obsahuje kód pre ContextMenu, že chceme vytvoriť. V tomto prípade k vytvoreniu rôznych menu pre dva widgety, sme použili metódu getId () za to, že použil metódu onCreateContextMenu (nastavenie ID dvoch vymožeností sa vykonáva metódou onCreate setId ()).
Ak by sme ísť dovnútra pridať do položky chceme s obvyklou metódou Shell a pridať metódu stanovenia titulu setHeaderTitle ContextMenu.
Aby bolo možné priradiť špecifické správanie pri tlaku na jedno z tlačidiel v menu, s ktorým pracujete rovnakým spôsobom vidieť v predchádzajúcej kapitole, ale pre OptionMenu zadanie požadovaného kódu v metóde onContextItemSelected (MENUITEM položka).
| |
MySQL (kurz)
Správa open-source databázy. Od 39 €. |
| |
Webmaster pokročilých (kurz)
Staňte sa profesionálne webmasterov. Od 39 €. |
| |
XML (kurz)
Tvorba štruktúry XML, XSL a ďalších jazykov rozšíriteľné. Od 29 €. |