..


Sponsrade länkar

Lägg till knappar AlertDialog

Uppenbarligen en AlertDialog strukturerad som tidigare kapitel är inte särskilt användbar eftersom den inte har någon knapp och faktiskt blockerar ansökan eftersom det inte finns något sätt att ta bort den från skärmen.
Innan du lägger på knapparna all'AlertDialog, dock måste du lägga till en Textview objekt där vi kommer att skriva ett annat budskap beroende på vilken knapp användaren klickar på. Tillägget av Textview är kvar som en övning till läsaren.

För tillsättning av knappar och föreningen i ALertDialog lyssnare helt enkelt ersätta koden skriven i föregående kapitel med följande:






 AlertDialog.Builder miaAlert AlertDialog.Builder = ny (denna)







 miaAlert.setMessage ("kontrollera funktionen hos de knappar lagts till!");







 miaAlert.setTitle ("AlertDialog av MrWebMaster");









 miaAlert.setCancelable (falskt);







 miaAlert.setPositiveButton ("Ja", ny DialogInterface.OnClickListener () {



  



 public void onClick (DialogInterface dialog, int id) {



    



 tv.setText ("Jag klickade på knappen JA");



  



 }







 });



    	





 miaAlert.setNegativeButton ("Nej", ny DialogInterface.OnClickListener () {



  



 public void onClick (DialogInterface dialog, int id) {



    



 tv.setText ("Jag klickade på knappen Nej");

   		

  



 }







 });







 AlertDialog miaAlert.create alert = ();







 Alert.show ();



Vad gäller de tre första raderna i koden behöver inte förklara någonting inquanto är identiska med de som anges i föregående kapitel. Att gå vidare med analysen av den kod vi hittar metodanrop setCanceble (falskt), som har effekten av att inaktivera den bakre knappen på telefonen och sedan måste du klicka på en av två knappar för att stänga AlertDialog.

Efter att ha sagt att vi övergå till att skapa riktiga knappar. Den första knappen skapas med metoden setPositiveButton som tar som indata en sträng som kommer att visas på skärmen som innehållet i knapp och en lyssnare. Som vi kan se lyssnaren deklareras som en ny instans av DialogInterface.OnClickListener och inte som en ny instans av View.OnClickListener. Detta faktum kan endast användas till element eriditano Visa-klassen, och eftersom AlertDialog inte ärver denna klass, men de är en del av paketet android.app måste du använda en lyssnare som DialogInterface.

I praktiken är denna skillnad inte sostanzianziale i själva verket, i detta fall, måste du åsidosätta OnClick metoden, och sätt in koden för det beteende som vi vill göra två knappar. Som vi kan se OnClick metoden tar som indata två parametrar: den första är ett objekt av typen AlertDialog (dialogruta som talar om vad som orsakat aktivering av lyssnaren) och sedan ett ID som identifierar knappen trycks in. Bara att gå in i OnClick metod för att ändra texten på Textview tv.

Strukturen i OnClick metoden föreslår en optimerad version av våra lyssnare. I själva verket AlertDialog veta vad som utlöst den som lyssnar och som knappen klickade på i rapporten, kan du skapa en enda lyssnare att hantera en mer AlertDialog och tillhörande knappar. Detta sker helt enkelt genom att köra ett första knappen på attribut Dialog (AlertDialog vi identifiera vad som utlöste lyssnaren) och i varje fall på AlertDialog sätta i en annan switch för att räkna ut vilken knapp på AlertDialog beaktas, är det klickade.

Den är kvar som en övning för läsaren att denna nya genomförandet av lyssnaren är i grunden mycket lik den som sett i tidigare kapitel i denna handbok.

Hjälpa till att utveckla applikationer för Android
E-Learning
Photoshop (kurs) Photoshop (kurs)
Webbgrafik och fotoredigering med den populära Adobe Photoshop. Från 49 €.
Ruby och Ruby on Rails (kurs) Ruby och Ruby on Rails (kurs)
Skapa program och webbapplikationer med Ruby och RoR. Från 39 €.
VB.NET (kurs) VB.NET (kurs)
Gör Desktopapplikationer med Visual Basic .. Från 49 €.
Sponsrade länkar