..
Akivaizdu AlertDialog struktūra kaip ankstesniame skyriuje nėra labai naudinga, nes ji neturi mygtuką ir faktiškai blokuoja taikymo, nes nėra būdas pašalinti ją iš ekrano.
Prieš pridėdami mygtukus all'AlertDialog, tačiau, turite pridėti TextView objektas, kuriame mes parašyti skirtingų pranešimą priklausomai mygtuką paspausti vartotojas.
Iš TextView to paliekamas kaip pratimą skaitytojui.
Dėl mygtukų ir asociacijos ALertDialog klausytojų to tiesiog pakeisti kodą parašyta ankstesniame skyriuje taip:
AlertDialog.Builder miaAlert AlertDialog.Builder = nauji (tai);
miaAlert.setMessage ("patikrinti mygtukų veikimas pridėta!");
miaAlert.setTitle ("AlertDialog iš MrWebMaster");
miaAlert.setCancelable (klaidinga);
miaAlert.setPositiveButton ("Taip", nauji DialogInterface.OnClickListener () {
public void onClick (DialogInterface dialogo, int id) {
tv.setText ("Aš paspausti mygtuką" YES ");
}
});
miaAlert.setNegativeButton ("Ne", nauji DialogInterface.OnClickListener () {
public void onClick (DialogInterface dialogo, int id) {
tv.setText ("Aš paspausti mygtuką" NE ");
}
});
AlertDialog miaAlert.create perspėjimas = ();
Alert.show ();
Kalbant apie pirmųjų trijų eilučių kodo nereikia aiškinti nieko inquanto yra tapatūs parodyta ankstesniame skyriuje. Ėjimas į priekį su kodu randame analizės metodo pritaikymo setCanceble (klaidinga), kuri turi išjungti mygtuką atgal į telefoną efektas ir tada jums reikės paspausti ant vieno iš dviejų mygtukų uždaryti AlertDialog.
Cela dit, mes pereiname prie realaus mygtukų kūrimas. Pirmasis mygtukas yra sukurtas metodas setPositiveButton kurioje atsižvelgiama kaip įvesties eilutę, bus rodomas kaip mygtuką ir klausytojas turinį ekrane. Kaip matome klausytojas yra deklaruojamas kaip nauja instancijos DialogInterface.OnClickListener, o ne kaip nauja instancijos View.OnClickListener. Šis faktas gali būti taikoma tik elementams eriditano Peržiūrėti klasės, o nuo AlertDialog nepaveldės šios klasės, tačiau jie yra paketo dalis android.app, turite naudoti klausytoją kaip DialogInterface.
Praktikoje šis skirtumas nėra sostanzianziale, iš tikrųjų, šiuo atveju, jums reikės nepaisyti onclick metodu, ir įterpti kodą elgesį mes norime, kad du mygtukai. Kaip matome onclick metodas atsižvelgia kaip pirkimo du parametrus: pirma, tai tipo AlertDialog objektą (dialogo, kad jums pasakys, kas sukėlė iš klausytojo aktyvacijos) ir ID, kuris identifikuoja mygtuką nuspaustą. Tiesiog eikite viduje onclick metodo pakeisti dėl TextView tv tekstą.
Iš onclick metodo struktūra rodo, optimizuota versija, mūsų klausytojus. Iš tiesų AlertDialog žinoti, ką sukėlė klausytoją ir kuris mygtukas buvo paspaudėte į perspėjimą, galite sukurti vieną klausytoją dirbti daugiau AlertDialog ir susiję mygtukai. Tai pasiekiama tiesiog vykdyti pirmą kartą įjungiate atributas dialogas (AlertDialog galime nustatyti, kas sukėlė klausytojo) ir kiekvieną AlertDialog atveju įdėti į kitą pereiti prie išsiaiškinti, kuris mygtuką AlertDialog atsižvelgti, jis paspaudėte.
Jis yra kairėje, kaip pratimą skaitytojui, kad šis naujas įgyvendinimo klausytojui iš esmės yra labai panašus į ankstesniuose skyriuose šio vadovo.
| |
Front Page (Ebook)
Kurti internetinius puslapius nežinant HTML kalbos. Tik 25 €. |
| |
"Linux" (kurso)
Užbaigti vadovą, kad atviro kodo sistema. Nuo 49 €. |
| |
Paint Shop Pro (pirmoji)
Web grafikos ir nuotraukų redagavimo su Corel PSP, žinoma. Nuo 49 €. |