Prima Modifica dell'APP - Acquisizione di eventi e dati. - Tecnologia
Vai al contenuto

Prima modifica dell'APP – Acquisizione di eventi e dati.

Annunci

Nella voce relativa alla creazione del primo progetto su Android, poi abbiamo visto come creare la nostra applicazione di base, abbiamo rivisto la struttura del progetto e diversi concetti come SDK, Manifest e le attività e il loro ciclo di vita, ora continueremo a modificare il progetto attuale per approfondire la creazione di app.

 

Come accennato andremo a modificare l'applicazione creata in questa voce dove abbiamo costruito il primo progetto Android, rimarremo lì su questa schermata

lì possiamo vedere che l'applicazione predefinita crea un componente TextView con il testo "Hello World", dalla vista divisa. (Se a questo punto non sai come creare l'app, ti consiglio di rivedere la voce sopra menzionata.)

essendo qui, modificheremo questa vista aggiungendo nuovi componenti, se poi andiamo alla vista del design, possiamo modificare lo schermo a nostro piacimento, in questo caso creeremo la seguente interfaccia.

Come possiamo vedere, abbiamo aggiunto un componente PlainText che corrisponde effettivamente a un campo di modifica o che può avere proprietà come testo normale, password, telefono, posta tra gli altri, allo stesso modo il layout definito ci consente di modificare la dimensione di i componenti e assegnare una posizione relativa, in questo caso il campo di testo ha una posizione relativa alla textView del titolo.

Se andiamo alla vista divisa, vedremo il codice xml generato e da qui possiamo modificare manualmente le proprietà, in questo caso abbiamo aggiunto un colore al titolo e una dimensione di 25sp, nota che ogni componente ha una proprietà id , nonché proprietà per controllare il posizionamento del componente sullo schermo.

 

Abbiamo trovato altri componenti come mancia che corrisponde ad a placeHolder che viene visualizzato mentre il campo è vuoto, è possibile aggiungere altre proprietà allo stesso modo per definire lo stile del componente.

 

Ora viene aggiunto un componente di tipo che ha anche la proprietà id che è relativa al componente text field, in questo caso modifichiamo l'identificatore.

Logica dell'applicazione.

 

Per eseguire l'elaborazione logica e informativa, andiamo alla classe MainActivity.kt, da lì otteniamo i componenti grafici tramite il loro id utilizzando il metodo findViewById().

 

Abbiamo aggiunto l'evento click del pulsante e creato una funzione chiamata onClick() (può essere chiamata in qualsiasi modo)

 

In questa funzione, viene aggiunta la logica per acquisire il valore del campo di testo, a cui si fa riferimento nello stesso modo del pulsante, ma in questo caso, creando un componente di tipo EditText che fa riferimento all'id del campo di testo.

 

Successivamente, il valore del campo viene ottenuto e sommato ad una variabile String che viene poi presentata in un componente di tipo Toast che permette la visualizzazione di un messaggio temporaneo a video.

 

Quando eseguiamo l'applicazione, l'emulatore si avvia e possiamo testare il sistema aggiungendo il nome utente e premendo il pulsante "invio", vediamo come viene visualizzato il Toast, che dura alcuni secondi.


Successivamente, modifichiamo lo schermo aggiungendo un altro componente TextView senza testo, che servirà a visualizzare le informazioni del nome digitato ma ora direttamente sullo schermo.

Per eseguire questa logica, torniamo alla classe MainActivity.kt e nella funzione referenziamo il componente EditText con l'id assegnato e quindi inviamo il messaggio che vogliamo visualizzare.

 

Successivamente lanciamo nuovamente l'applicazione e otteniamo il seguente risultato.


 

Un'altra alternativa per catturare i dati è dichiarare i componenti globalmente, evitando così di doverli dichiarare in ogni funzione:


Importante da usare!! per impedirti di avere riferimenti nulli.

 

Osservazione:

 

Nelle righe 11 e 12 viene utilizzato nullsafety, questa è una funzionalità di kotlin che permette di controllare i valori null all'interno dell'applicazione, impedendole di caricare la popolare NullPointerException, non possiamo assegnare direttamente i valori null, ma in questo modo quando indichiamo EditText? stiamo dicendo al compilatore che questo campo può avere un riferimento nullo e consentirne l'elaborazione.

 

nelle righe 26 e 27 utilizzare !! per dire al compilatore di non controllare se il valore è nullo e quindi può compilare senza problemi, ma se è nullo lancia l'eccezione nella console, nel caso sappiamo che può arrivare un valore nullo e vogliamo comunque processare

 

Un'altra alternativa consigliata sarebbe quella di effettuare chiamate sicure, quindi quando si tenta di chiamare l'oggetto, se è nullo, l'eccezione non verrà lanciata, ma il valore nullo verrà memorizzato senza terminare il processo, ecco perché la variabile deve essere nullable per farlo compilare correttamente.

 

E questo è tutto, con ciò abbiamo la nostra prima applicazione funzionale con acquisizione dati ed eventi pulsante.

 

Potrebbe anche interessarti.





C'è qualcosa che vuoi aggiungere o commentare su questa voce? sentiti libero di fare....E se ti è piaciuto... ti invito a condividere Y Iscriviti facendo clic sul pulsante "Unisciti a questo sito" per ascoltare altri post come questo 😉