Första ändringen av APP - Fångst av händelser och data. – Teknik
Hoppa till innehållet

Första ändringen av APP - Fångst av händelser och data.

Annonser

I inlägget om att skapa det första projektet på Android, sedan såg vi hur man skapar vår grundläggande applikation, vi granskade strukturen för projektet och olika koncept som SDK, Manifest och aktiviteterna och deras livscykel, nu kommer vi att fortsätta modifiera det nuvarande projektet för att gå djupare in i appskapandet.

 

Som nämnts kommer vi att ändra applikationen som skapades i denna post där vi byggde det första Android-projektet, vi kommer att stanna där på den här skärmen

där kan vi se att standardapplikationen skapar en TextView-komponent med texten "Hello World", från den delade vyn. (Om du vid det här laget inte vet hur du bygger appen rekommenderar jag att du granskar posten som nämns ovan.)

När vi är här kommer vi att modifiera den här vyn genom att lägga till nya komponenter, om vi sedan går till designvyn kan vi modifiera skärmen efter vår smak, i det här fallet kommer vi att skapa följande gränssnitt.

Som vi kan se har vi lagt till en PlainText-komponent som faktiskt motsvarar ett redigeringsfält eller som kan ha egenskaper som vanlig text, lösenord, Telefon, Mail bland annat, på samma sätt som den definierade layouten tillåter oss att ändra storleken på komponenterna och tilldela en relativ position, i detta fall har textfältet en position relativt titelns textView.

Om vi går till Split-vyn kommer vi att se den genererade xml-koden och härifrån kan vi ändra egenskaperna manuellt, i det här fallet har vi lagt till en färg till titeln och en storlek på 25sp, observera att varje komponent har en id-egenskap , samt egenskaper för att styra placeringen av komponenten på skärmen.

 

Vi hittade andra komponenter som dricks som motsvarar a Platshållare som visas medan fältet är tomt, andra egenskaper kan läggas till på samma sätt för att utforma komponenten.

 

Nu läggs en komponent av typ till som också har egenskapen id som är relativ till textfältskomponenten, för det här fallet ändrar vi identifieraren.

Applikationslogik.

 

För att utföra logik- och informationsbearbetningen går vi till klassen MainActivity.kt, därifrån får vi de grafiska komponenterna genom deras id med metoden findViewById().

 

Vi lade till knappens klickhändelse och skapade en funktion som heter onClick() (Kan anropas på vilket sätt som helst)

 

I den här funktionen läggs logik till för att fånga värdet på textfältet, som refereras på samma sätt som knappen, men i det här fallet skapas en komponent av typen EditText som refererar till textfältets ID.

 

Därefter erhålls fältvärdet och läggs till en String-variabel som sedan presenteras i en Toast-typkomponent som tillåter visning av ett tillfälligt meddelande på skärmen.

 

När vi kör applikationen startar emulatorn och vi kan testa systemet genom att lägga till användarnamnet och trycka på “enter”-knappen, vi ser hur Toasten visas, vilket varar i några sekunder.


Efter det ändrar vi skärmen genom att lägga till en annan TextView-komponent utan text, som kommer att tjäna till att visa informationen om det inskrivna namnet men nu direkt på skärmen.

För att utföra denna logik går vi tillbaka till klassen MainActivity.kt och i funktionen refererar vi till EditText-komponenten med tilldelat id och skickar sedan meddelandet vi vill visa.

 

Senare startar vi applikationen igen och vi får följande resultat.


 

Ett annat alternativ för att fånga data är att deklarera komponenterna globalt, och på så sätt undvika att behöva deklarera dem i varje funktion:


Viktigt att använda!! för att förhindra att du har nollreferenser.

 

Observation:

 

I raderna 11 och 12 används nullsafety, detta är en kotlin-funktion som tillåter styrning av nollvärden inom applikationen, vilket förhindrar att den laddar den populära NullPointerException, vi kan inte tilldela nollvärden direkt, men på detta sätt när vi indikerar EditText? vi talar om för kompilatorn att detta fält kan ha en nollreferens och tillåta att det bearbetas.

 

på rad 26 och 27 använd !! att säga åt kompilatorn att inte kontrollera om värdet är null och därför kan den kompilera utan problem, men om det är null, släng undantaget i konsolen, ifall vi vet att ett nollvärde kan komma och vi fortfarande vill bearbeta

 

Ett annat rekommenderat alternativ skulle vara att göra säkra anrop, så när du försöker anropa objektet, om det är null, kommer undantaget inte att kastas, men nullvärdet kommer att lagras utan att avsluta processen, det är därför variabeln måste vara nullbar. för att det ska kompileras korrekt.

 

Och det är det, med det har vi vår första funktionella applikation med datafångst och knapphändelser.

 

Det kan också intressera dig.





Finns det något du vill lägga till eller kommentera om det här inlägget? gör gärna....Och om du gillade det... Jag inbjuder dig att dela y Prenumerera genom att klicka på knappen "Gå med på den här webbplatsen" för att höra fler inlägg som detta 😉