Prva izmjena APP-a - Hvatanje događaja i podataka. - Tehnologija
Preskoči na sadržaj

Prva izmjena APP-a – Hvatanje događaja i podataka.

Oglasi

U unosu o stvaranju prvog projekta na Androidu, zatim smo vidjeli kako stvoriti našu osnovnu aplikaciju, pregledali smo strukturu projekta i različite koncepte kao što su SDK, Manifest i aktivnosti i njihov životni ciklus, sada ćemo nastaviti mijenjati trenutni projekt kako bismo ušli dublje u izradu aplikacija.

 

Kao što je spomenuto, izmijenit ćemo aplikaciju stvorenu u ovom unosu gdje smo napravili prvi Android projekt, ostat ćemo tamo na ovom zaslonu

tamo možemo vidjeti da zadana aplikacija stvara komponentu TextView s tekstom "Hello World", iz Split pogleda. (Ako u ovom trenutku ne znate kako izraditi aplikaciju, preporučujem da pregledate gore navedeni unos.)

budući da smo ovdje, mi ćemo modificirati ovaj pogled dodavanjem novih komponenti, ako tada odemo na prikaz dizajna, možemo modificirati ekran prema našim željama, u ovom slučaju mi ćemo stvoriti sljedeće sučelje.

Kao što vidimo, dodali smo komponentu PlainText koja zapravo odgovara polju za uređivanje ili koja može imati svojstva kao što su čisti tekst, lozinka, telefon, pošta među ostalima, na isti način na koji nam definirani izgled omogućuje izmjenu veličine komponente i dodijelite relativni položaj, u ovom slučaju tekstualno polje ima položaj u odnosu na textView naslova.

Ako odemo na pogled Split, vidjet ćemo generirani xml kod i odavde možemo ručno mijenjati svojstva, u ovom slučaju dodali smo boju naslovu i veličinu od 25sp, imajte na umu da svaka komponenta ima svojstvo id, kao i svojstva za kontrolu postavljanja komponente na ekranu.

 

Pronašli smo druge komponente poput Savjet što odgovara a rezerviranog mjesta koji se prikazuje dok je polje prazno, druga svojstva se mogu dodati na isti način za stil komponente.

 

Sada je dodana komponenta tipa koji također ima svojstvo id koje je relativno u odnosu na komponentu tekstualnog polja, za ovaj slučaj mijenjamo identifikator.

Logika primjene.

 

Da bismo izvršili logičku i informacijsku obradu, idemo u klasu MainActivity.kt, odatle dobivamo grafičke komponente kroz njihov ID pomoću metode findViewById().

 

Dodali smo događaj klika gumba i stvorili funkciju pod nazivom onClick() (Može se pozvati na bilo koji način)

 

U ovoj se funkciji dodaje logika za hvatanje vrijednosti tekstualnog polja, koje se referira na isti način kao i gumb, ali u ovom slučaju, stvara se komponenta tipa EditText koja upućuje na ID tekstualnog polja.

 

Naknadno se dobiva vrijednost polja i dodaje varijabli String koja se zatim predstavlja u komponenti tipa Toast koja omogućuje prikaz privremene poruke na zaslonu.

 

Kada pokrenemo aplikaciju, pokreće se emulator i možemo testirati sustav dodavanjem korisničkog imena i pritiskom na tipku “enter”, vidimo kako se prikazuje Toast koji traje nekoliko sekundi.


Nakon toga modificiramo ekran tako da dodamo još jednu TextView komponentu bez teksta, koja će služiti za prikaz informacija o upisanom nazivu ali sada direktno na ekranu.

Da bismo proveli ovu logiku, vraćamo se u klasu MainActivity.kt iu funkciji upućujemo na komponentu EditText s dodijeljenim ID-om, a zatim šaljemo poruku koju želimo prikazati.

 

Kasnije ponovno pokrenemo aplikaciju i dobijemo sljedeći rezultat.


 

Još jedna alternativa za hvatanje podataka je deklarirati komponente globalno, čime se izbjegava njihovo deklariranje u svakoj funkciji:


Važno za korištenje!! kako bismo vas spriječili da imate nulte reference.

 

Promatranje:

 

U redovima 11 i 12 koristi se nullsafety, ovo je kotlin značajka koja omogućuje kontrolu null vrijednosti unutar aplikacije, sprječavajući učitavanje popularne NullPointerException, ne možemo izravno dodijeliti null vrijednosti, ali na ovaj način kada označimo EditText? kažemo kompajleru da ovo polje može imati nultu referencu i dopustiti da bude obrađeno.

 

u redovima 26 i 27 koristite !! reći kompajleru da ne provjerava je li vrijednost null i stoga može prevesti bez problema, ali ako je null, izbaci iznimku u konzoli, u slučaju da znamo da može stići null vrijednost, a još uvijek želimo obraditi

 

Još jedna preporučena alternativa bila bi napraviti sigurne pozive, tako da kada pokušate pozvati objekt, ako je null, iznimka neće biti bačena, ali će null vrijednost biti pohranjena bez prekida procesa, zato varijabla mora biti nullable da bi se ispravno kompilirao.

 

I to je to, uz to imamo našu prvu funkcionalnu aplikaciju sa snimanjem podataka i događajima gumba.

 

Moglo bi i vas zanimati.





Želite li nešto dodati ili komentirati o ovom unosu? slobodno učini….A ako vam se svidjelo... pozivam vas da podijelite g Pretplatite se klikom na gumb "Pridružite se ovoj stranici" kako biste čuli više postova poput ovog 😉