Il primo passo prima di chiamare una Activity

In questo articolo/video vedremo i passi per creare la nostra prima activity ossia la nostra equivalente prima pagina web di un normale sito. Capiremo come, usando Android Studio o Eclipse, il meccanismo di creazione sia quasi automatizzato. L'unica cosa da sapere è quale layout prelevare per mostrarlo sullo schermo dello smartphone del tuo navigatore.

Ora che sappiamo come creare un nuovo progetto con Android Studio o Eclipse, come costruire un'interfaccia grafica da inserire all'interno della cartella Layout, e infine cosa sia un'Activity, vediamo di chiudere il cerchio e analizzare in dettaglio il procedimento grazie al quale il nostro utente, dopo aver aperto l'applicazione, sia in grado di visualizzare la sua prima pagina in Android.

Cosa imparerai?

Al termine di questo tutorial avrai imparato:

  • Come usare Android Studio o Eclipse per aprire un'activity e visualizzarne il codice Java
  • Significato della cartella "src" presente in ogni progetto
  • Significato dell'istruzione java setContentView();

Riassumendo i precedenti tutorial, abbiamo imparato che il metodo con cui si definiscono queste pagine in Android  a livello grafico, e' principalmente  grazie alla definizione di un file xml (layout), che stabilisce cosa visualizzare e come, all'interno della pagina.

L'anello mancante è, capire come comandare la visulizzazione di questa pagina e di altre pagine, che avrò la necessità di creare in seguito.

Per fare questo dobbiamo servirci di Android Studio o Eclipse, in quanto, molto del codice che ci servirà per fare questa banale operazione, viene proprio creato in automatico.

Se difatti, proviamo ad aprire un qualsiasi progetto Android con Android Studio o Eclipse, e ci spostiamo nella cartella Java>nomepackage, quello che troveremo all'interno, saranno un insieme di file con estensione Java, che rappresentano le diverse Activity con cui è stata progettata quell'applicazione.

STEP1: dove si trova il cuore di ogni app?

Abbiamo già introdotto il sognificato della cartella di sistema "res", e abbiamo visto anche il significa e l'uso della cartella di sistema "layout". Se non ti ricordi cosa sono e a cosa servono, ti invito a rileggere il tutorial "Progettare un semplice Layout in Android" e a guardare il relativo video scaricabile se sei iscritto al corso base. La terza cartella che impareremo a conoscere come le nostre tasche, è quella che prende il nome di "src" che sta per "source" ossia sorgente del codice Java.

All'interno della cartella src, troveremo di volta in volta i file java, che rappresentano il cuore logico della nostra applicazione. Sarà proprio grazie alle righe scritte all'interno di ognuno di questi file, che la nostra applicazione sarà in grado di rispondere alle richieste fatte dal navigatore.

Allora se proviamo ad espandere il contenuto di questa cartella, troveremo, come nostro primo file, proprio la prima Activity creata, che avrà il nome scelto in fase di impostazione del progetto (vedi tutorial "Creare la tua prima app usando Android Studio o Eclipse"). Se provassi ad aprire la cartella del progetto in explora risorse di Windows, scopriresti che l'estension del file è proprio .java (fig. 1a)

activity

Quello che invece visualizzi nella (fig. 1b), non è altro che il codice java (non prendere paura), che Android Studio o Eclipse ha creato al volo per noi e che imparerai a decifrare seguendo i prossimi tutorial.

STEP 2: la mia prima istruzione java: setContentView()

Senza spendere troppe parole, la prima cosa che vogliamo fare quando si crea una applicazione, è mostrare la prima pagina. Ora, mentre nel caso di un sito web, è sufficiente creare una pagina index.htm o simili, caricarla in uno spazio web, e digitare il nome di dominio per visualizzarla, nel mondo Android, questo viene fatto con una singola istruzione, che prende il nome di setContentView().

STEP 3: Dialogo semiserio tra un utente e una giovane app

Utente - Buongiorno PrimaPagina, mi faresti vedere la tua prima pagina. Sono proprio curioso...
APP - Ok, aspetta... mi preparo. Prendo dal mio zaino... dovrebbe essere questa.. eccola .. l'istruzione: setContentView()

APP - Ehm, non sono ancora molto esperta. Potresti dirmi quale prima pagina?
Utente - Certo, hai ragione. Mostrami quella interfaccia grafica - quel file .xml - che tuo padre ha creato e che ha chiamato pagina1.

APP: Volentieri! Potresti dirmi per favore dove si trova questa interfaccia grafica, questo layout?
Utente: Che palle!

APP: ..? dove scusa...
Utente: ohps...Certo si trova dentro alla cartella Layout di risorse.

APP: E come faccio a indicare il percorso dove recuperarla?
Utente: Ma insomma ... sei proprio alle prime armi... Non sai ... una maz.... Ti spiego: si adotta una sintassi simile a quella per recuperare un'immagine, solo che al posto di indicare un percorso stile "images/nomeimmagine.png", si usano delle abbreviazioni e una notazione con il punto al posto delle / 

APP: Ah ho capito. Semplice. Potrei allora indicare il percorso così: layout.pagina1
Utente: Mi sembra vada bene, ma non funziona. Non è che bisogna indicare un percorso completo?

APP: ehm... fammi pensare... Ci sono: mi sono dimenticata di aggiungere una R. Prova con: R.layout.pagina1
Utente: Funziona! ... che bella pagina che hai!

STEP 4: Il mio primo file java

Tutto questo dialogo si traduce nel codice qui sotto, che è lo stesso codice che trovi quando crei un nuovo progetto da zero in Android Studio, scegliendo un'Activity Vuota.

public class MainActivity extends AppCompactActivity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
	  super.onCreate(savedInstanceState);
          // imposto il layout da visualizzare
          setContentView(R.layout.pagina1);
        }
} 

Non prendere paura dal codice, visto che gran parte viene generato in automatico da Visual Studio. L'unica riga che devi conoscere per ora, è la riga in cui è inserita l'istruzione/metodo setContentView() (capiremo cos'è un metodo in una delle prossime lezioni)

cartella res

All'interno delle parentesi, si ha una notazione, come detto, diversa da quella classica del mondo delle pagine web, ma tipica del mondo della programmazione ad oggetti, che ci permette di identificare una particolare risorsa interna alla cartella "res", in particolare la risorsa che si trova dentro alla cartella "layout" che vogliamo mostrare al navigatore.

E questa risorsa non è altro che l'interfaccia, il layout, che vogliamo mostrare al navigatore non appena avvierà l'applicazione.

R.cartella.nomerisorsa

Nella prossima lezione vedremo come creare una seconda pagina per la nostra app e come richiamarla grazie al tocco su di un bottone o link inserito all'interno di un layout associato ad un'Activity.

Alla prossima! 

Ti è servito un pò, l'articolo? Condividilo ADESSO sui social! Grazie :-)

Tipo/Autore: Pubblicato da: CorsoAndroid.it

Voto 4.2/5 basato su 6 Recensioni
© 2011-2017 CorsoAndroid.it - Tutti i diritti riservati. Corso Base Android per rompere il ghiaccio Creare app per android
NB: Tutti i marchi citati sono di proprietà dei rispettivi proprietari. Android is a trademark of Google Inc.