Anteprima
Vedrai una selezione di 3 pagine su 6
Appunti lezione di Programmazione mobile Pag. 1 Appunti lezione di Programmazione mobile Pag. 2
Anteprima di 3 pagg. su 6.
Scarica il documento per vederlo tutto.
Appunti lezione di Programmazione mobile Pag. 6
1 su 6
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Checkbox è una serie di bottoni ON/OFF (si può selezionare più di una a differenza del

RadioButton).

Esercizio passo passo che guida nell'utilizzo delle componenti di layout :

https://developer.android.com/courses/pathways/android-basics-compose-unit-2-pathway-3

2.4 Navigazione

Ogni schermata può essere intesa come un activity. L'intent è un oggetto di messaggistica che si

utilizza per richiedere

un'azione da un altro componente dell'app. L'intent può inviare Broadcast che l'app può utilizzare

per effettuare determinate

operazione (es: whatsapp quando riceve messaggio broadcast sul fatto che siamo collegati con wi-fi

effettua backup).

Si parla di explicit intent quando specifico azione ben precisa che dovrà fare la mia app.

Si parla di implicit intent quando viene richiamata una activity al di fuori della mia app (non sono in

grado di determinare la

destinazione finale).

27/03/2025

android:text="@{numVittorie}" lavoro con variabili di layout, al cambiamento della variabile

numVittorie cambierà il testo della

componente in cui abbiamo scritto ciò (all'interno del file di layout XML).

Il primo intent è quello che instanzia il main activity. Esiste una cronologia delle activity grazie alla

struttura a pila

che viene utilizzata (FIFO).]

per creare intent esplicito deve prendere l'activity da cui si parte (this, cioè questa activity), mentre

secondo paremetro

è l'activity da lanciare (slide 12).

con uri posso indentificare qualsiasi risorsa.

Spostandosi da una schermata ad un altra, molto spesso si trovanno inviare e ricevere dati.

28/03/2025

intent.getData() ci fornisce la URI inserita prima.

intent.getIntExtra("myKey",0) legge informazione negli extras, più precisamente andando a leggere

quello che è presente nella chiave

"myKey" se non trovi quella chiave lì ritorna valore zero (valore di backup).

Per ritornare i dati all'attività iniziale bisogna:

nella seconda activity devo creare un intent che conterrà tutti i dati(inseriti tramite putExtra ), e

settare a RESULT_OK oppure

RESULT_CANCELED (status), per infine fare il finish() per chiudere activity. Nella main activity

devo assicurarmi che questa possa

ricevere e gestire questi dati (registrare un contratto).

Possiamo avere due file di layout per una determinata activity (un layout per telefono in verticale e

un altro per il telefono in

orizzontale).

--

Menu':

Nell tool bar devo inserirci un menu', altrimenti è vuota (ha solo il nome dell'activity), e poi gestire

le opzioni selezionate.

Il messaggio toast in Android è un breve avviso che compare nella parte inferiore dello schermo per

informare l'utente di un'azione

eseguita dall'app (la durata è a scelta del programmatore).

RecyclerView semplifica la visualizzazione efficiente di grandi set di dati.

I floating context menu appaiono dopo click lungo su una view. Ogni item del menu deve avere id,

che mi permette di capire quale

scelta è stata effettuata dall'utente all'interno del menu.

04/04/2025

Utile da utilizzare solo nel caso di liste lunghe.

Una transazione è un blocco atomico a livello di Android studio (non posso rischiare di comprare

due volte la stessa cosa). In caso

utente volesse tornare indietro nel mezzo di un transazione viene ripulito lo stacco e ritorna al primo

fragment in cronologia. Questo si può

fare tramite opzione “popupTo” nel navigation graph (slide 130 navigation). Il “popupTo” specifica

fino a quale destinazione si desidera tornare

indietro. Questo permette di eliminare i fragment precedenti quando si naviga verso una nuova

destinazione.

ReyclerView 2.5

Contenitore che contiene altri oggetti (ViewGroup). Tramite RecycleView.Adapter facciamo

override di tre funzioni (slide 5->2.5), e permette di

personalizzare la lista. Mi permette di non avere un grosso array di contenitori all’interno della

RAM. I contenitori quando scrollo rimangono

invariati, quello che cambia è il contenuto all’interno. I dati (contenuti) normalmente provengono

da un database o un file esterni. Quando

inizio a scrollare richiamo il onBindViewHolder (viene eseguito in automatico, ogni volta che

facciamo scroll).

08/04/2025

Per rendere iterattivi gli item in una lista inserire un .setOnClickListener. Log.'lettera'è una classe

che permette di effettuare il logginng di

un messaggio (registrare e stampare messaggio di log) associando un livello di gravità del

messaggio.

Tale messaggio verrà visualizzato solo dallo sviluppatore (all'interno di androind studio).

Messaggi di log di onCreate non li posso vedere, solo quelli di onBindViewHolder. I messaggi di

log si possono vedere nel Logcat, posso anche

ListAdapter è una classe base che permette di avere elementi in lista dinamici (regge cancellazione

elementi, non riscrive da capo i viewHolder).

Serve aggiunta nuovi metodi di supporto areContentsTheSame, areItemsTheSame che possono

essere sovvrascritti.

Binding avanzati: inventare nuovi attributi nelle componenti layout per avere personalizzazione

layout, a cui viene associato un binding adapter.

Praticamente una funzione che comporta la modifica di un attributo associato ad un

determinato componente di layout (non serve).

I tre "famosi" metodi onCreateViewHolder(), onBindViewHolder(), getItemCount() vanno inseriti

all'interno dell'adapter. Ricordiamo che il 1°

metodo serve a creare una nuova ViewHolder (layout singolo item), il 2° metodo invece Serve per

legare i dati all'item (cioè popolare la riga con

i dati), mentre l'ultimo a contare il numero di item presenti nella lista.

Negli headers, il sistema tiene in memoria n liste di contenitori.....

Si possono avere anche liste orizzontali, sostituendo al posto di LinearLayoutManager con

GridLayoutManager.

2.6 Jetpack Compose

E' un toolkit di instrumenti che rende più moderne le costruzioni di interfacce grafiche in android,

secondo un modello di programmazione reattiva.

Quello utilizzato prima era un approccio imperativo, mentre quello che utilizzeremo sarà quello

dichiarativo.

Stato : insieme di variabili che descrivono in che stato si trova una determinata activity.

L'interfaccia utente è in funzione dello stato, questa

cambia in base allo stato in cui si trova.

Dettagli
Publisher
A.A. 2024-2025
6 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher grizza4 di informazioni apprese con la frequenza delle lezioni di Programmazione mobile e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università Politecnica delle Marche - Ancona o del prof Principi Emanuele.