Sådan bruges Spinner i Android-applikationsudvikling

(20. dec. , 2020)

Spinneren er en Android-widget, der muliggør en bruger foretager et valg ud af en liste med muligheder. Spinneren opfører sig som en radiogruppe, men hvis du har mange muligheder, ville radiogruppe være et dårligt valg, fordi hver radioknap optager plads på din skærm. Spinneren løser dette problem, fordi det bare er en rullemenu, der viser alle tilgængelige valgmuligheder. I standardtilstand viser en spinner den aktuelt valgte værdi.

I denne vejledning skal vi lave en spinner, der viser alle ugedagene. Da vi ved, at vi kender alle dage   af     ugen, vil vi brug et strengarray, som vi erklærer i filen string.xml for at reducere kedelpladekoden (unødvendig kode).

Vi starter med at erklære alle ugedagene i filen string.xml . For at gøre det skal du gå til Res -> Værdier -> String.xml-fil. Vi tilføjer et tag kaldet string-array og giver det navnet “dage”, så vi senere kan få adgang til det i kode. Derefter åbner vi et andet indlejret tag kaldet varer for hver værdi (ugedag).

Vi flytter til layout.xml-filen og indsætter spinneren. Vi indstiller layoutbredden og -højden til wrap\_content for at spare plads, vi indstiller også begrænsningerne for at holde spinderen fast til den position, vi ønsker. Derefter bruger vi attributter “android: poster” til at give spinneren adgang til værdierne i vores string.xml-fil.

Dernæst er det store spørgsmål, hvordan kan vi registrere, når det aktuelt valgte emne ændres? Det er simpelt. I vores mainActivity.kt-fil kalder vi vores spinner-id og kalder påItemSelectedListener på den. Derefter tildeler vi det til en anonym klasse “AdapterView.onItemSelectedListener”. Efter dette bemærker vi, at objektet er understreget med rødt, fordi vi ikke har implementeret de funktioner, der er defineret i AdapterView.onItemSelectedListener. Vi kan simpelthen gøre det ved at trykke på CTRL + I, holde shift nede og vælge begge muligheder. Dernæst bruger vi en skål i onItemSelected-funktion til at angive, at et element er valgt.

Vi kan også indstille posterne til spinneren, hvis vi kun kender værdierne under kørsel uden at definere poster i strengarrayet. Her erklærer vi først en liste for spinneren i en variabel. Så får vi en adapter til spinderen. I arrayadapteren bruger vi en standard spinner layoutfil kaldet R.layout.support\_simple\_spinner\_dropdown\_item. Derefter videregiver vi customList-variablen i konstruktøren af ​​ArrayAdapter og tildeler derefter adaptervariablen til spinner-widgeten.

God kodning, fyre  !

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *