Rakenduse esimene muudatus – sündmuste ja andmete jäädvustamine. - Tehnoloogia
Mine sisu juurde

Rakenduse esimene muudatus – sündmuste ja andmete jäädvustamine.

Reklaamid

Kirjes esimese projekti loomisest Androidis, siis nägime, kuidas luua oma põhirakendust, vaatasime üle projekti struktuuri ja erinevad kontseptsioonid nagu SDK, Manifest ning tegevused ja nende elutsükkel, nüüd jätkame praeguse projekti muutmist et süveneda rakenduste loomisesse.

 

Nagu mainitud, muudame selles kirjes loodud rakendust, kus ehitasime esimese Androidi projekti, jääme sinna sellel ekraanil

seal näeme, et vaikerakendus loob jagatud vaatest TextView komponendi tekstiga “Hello World”. (Kui te praegu ei tea, kuidas rakendust luua, soovitan teil ülalmainitud kirje üle vaadata.)

Siin olles hakkame seda vaadet muutma, lisades uusi komponente, kui siis läheme kujundusvaatesse, saame muuta ekraani oma maitse järgi, sel juhul loome järgmise liidese.

Nagu näeme, oleme lisanud komponendi PlainText, mis tegelikult vastab redigeerimisväljale või millel võivad olla atribuudid nagu lihttekst, parool, telefon, e-post, samamoodi nagu defineeritud paigutus võimaldab meil muuta teksti suurust. komponendid ja määrata suhteline positsioon, sel juhul on tekstiväljal pealkirja textView suhtes asend.

Kui läheme Split vaatesse, siis näeme genereeritud xml koodi ja siit saame atribuute käsitsi muuta, antud juhul oleme pealkirjale lisanud värvi ja suuruseks 25sp, pange tähele, et igal komponendil on id omadus , samuti atribuudid komponendi ekraanil paigutuse juhtimiseks.

 

Leidsime muid komponente nagu jootraha mis vastab a kohahoidja mida kuvatakse siis, kui väli on tühi, saab komponendi stiilimiseks samamoodi lisada muid atribuute.

 

Nüüd lisatakse tüüpi komponent millel on ka id omadus, mis on seotud tekstivälja komponendiga, sel juhul muudame identifikaatorit.

Rakenduse loogika.

 

Loogilise ja infotöötluse teostamiseks läheme klassi MainActivity.kt, sealt saame graafilised komponendid nende id kaudu meetodi findViewById() abil.

 

Lisasime nupu klõpsamise sündmuse ja lõime funktsiooni nimega onClick() (saab välja kutsuda mis tahes viisil)

 

Selles funktsioonis lisatakse loogika tekstivälja väärtuse jäädvustamiseks, millele viidatakse samamoodi nagu nupule, kuid sel juhul luuakse EditText tüüpi komponent, mis viitab tekstivälja ID-le.

 

Seejärel saadakse välja väärtus ja lisatakse String muutujale, mis esitatakse seejärel Toast tüüpi komponendis, mis võimaldab kuvada ekraanil ajutist sõnumit.

 

Rakenduse käivitamisel käivitub emulaator ja saame süsteemi testida, lisades kasutajanime ja vajutades “enter” nuppu, näeme, kuidas kuvatakse Toast, mis kestab paar sekundit.


Pärast seda muudame ekraani, lisades teise ilma tekstita TextView komponendi, mis kuvab sisestatud nime teabe, kuid nüüd otse ekraanil.

Selle loogika teostamiseks läheme tagasi klassi MainActivity.kt ja viitame funktsioonis EditText komponendile koos määratud ID-ga ja saadame seejärel sõnumi, mida tahame kuvada.

 

Hiljem käivitame rakenduse uuesti ja saame järgmise tulemuse.


 

Teine alternatiiv andmete püüdmiseks on komponendid globaalselt deklareerida, vältides seega nende deklareerimist igas funktsioonis:


Tähtis kasutada!! et vältida nullviiteid.

 

Vaatlus:

 

Ridadel 11 ja 12 kasutatakse nullturvalisust, see on kotlini funktsioon, mis võimaldab hallata nullväärtusi rakenduse sees, takistades sellel populaarse NullPointerExceptioni laadimist, me ei saa nullväärtusi otse määrata, aga kas sel viisil, kui näitame EditText? me ütleme kompilaatorile, et sellel väljal võib olla nullviide ja see võimaldab seda töödelda.

 

ridadel 26 ja 27 kasutada !! käskida kompilaatoril mitte kontrollida, kas väärtus on null ja seetõttu saab ta probleemideta kompileerida, aga kui see on null, siis visake konsooli erand, kui teame, et nullväärtus võib saabuda ja me tahame siiski töödelda

 

Teine soovitatav alternatiiv oleks turvakõnede tegemine, nii et kui proovite objekti kutsuda, kui see on null, siis erandit ei visata, vaid nullväärtus salvestatakse ilma protsessi katkestamata, mistõttu peab muutuja olema nullitatav et see saaks õigesti kompileerida.

 

Ja ongi kõik – sellega on meil esimene funktsionaalne andmehõive ja nuppude sündmustega rakendus.

 

See võib teile ka huvi pakkuda.





Kas soovite selle kirje kohta midagi lisada või kommenteerida? tee julgelt….Ja kui teile meeldis... Kutsun teid jagama Y Tellige, klõpsates nupul "Liitu selle saidiga", et kuulda rohkem selliseid postitusi 😉