Questo suggerimento rapido mostra i passaggi per creare un semplice controllo Button o ImageButton nell'applicazione Android. In primo luogo, si impara come aggiungere i pulsanti di controllo ai file di layout. Successivamente, si impara come gestire i clic sui pulsanti da parte dell'utente in due modi diversi. Infine, discuteremo alcune delle altre funzionalità disponibili per i controlli dei pulsanti in Android.
Inizia creando un progetto Android. Implementa la tua applicazione Android normalmente. Una volta che hai configurato un progetto e l'applicazione è in esecuzione, decidi in quale schermata vuoi aggiungere i controlli Button. Forse hai semplicemente creato un nuovo progetto Android con l'attività e il layout predefiniti (main.xml). Questo funzionerà per questo tutorial. Una volta che hai impostato il tuo progetto Android, sei pronto per procedere con questo suggerimento rapido.
Puoi seguire il nostro progetto: BasicButtons, disponibile come progetto open source.
L'SDK di Android include due semplici pulsanti per l'uso all'interno dei tuoi layout: Button (android.widget.Button) e ImageButton (android.widget.ImageButton). Questi controlli funzionano in modo simile, quindi possiamo discuterli praticamente in modo intercambiabile. La differenza tra i controlli è prevalentemente visiva; il controllo Button ha un'etichetta di testo, mentre ImageButton utilizza invece una risorsa drawable dell'immagine. Un buon esempio di utilizzo del pulsante sarebbe un semplice pulsante con un'etichetta di testo "Salva". Un buon esempio di utilizzo di ImageButton sarebbe un insieme di pulsanti ispirati alla musica con i simboli per Play (), Pausa () e Stop ( ).
Ecco un esempio di uno schermo con controllo Button (a sinistra) e ImageButton (a destra).
L'SDK di Android include anche diversi altri controlli simili a pulsanti meno conosciuti derivati da questi due tipi di pulsanti di base, inclusi CompoundButton, RadioButton, ToggleButton e ZoomButton. Per ulteriori informazioni su questi controlli, consultare la documentazione di Android. Puoi anche creare tu stesso controlli personalizzati derivando dalla classe appropriata e implementando il comportamento del controllo.
I controlli pulsante sono generalmente inclusi come parte del file di risorse di layout dell'attività. Ad esempio, per aggiungere un controllo Button alla risorsa di layout main.xml associata all'applicazione, è necessario modificare il file di layout. Puoi farlo in Eclipse usando il designer di risorse di layout o modificando direttamente l'XML. Controlli come i pulsanti possono anche essere creati a livello di codice e aggiunti al tuo schermo in fase di runtime. Crea semplicemente il controllo appropriato dalla sua classe e aggiungilo al tuo layout all'interno della tua attività.
Per aggiungere un controllo Button a un file di risorse di layout, apri il file di layout /res/layout/main.xml che fa parte del tuo progetto Android. Fare clic su LinearLayout (o controllo di layout genitore, come RelativeLayout o FrameLayout) a cui si desidera aggiungere il controllo Button. In Eclipse, puoi fare clic sul layout principale nella scheda Struttura e quindi aggiungere un nuovo controllo utilizzando il pulsante verde con il segno più. Scegli il controllo che vuoi aggiungere: in questo caso, un controllo Button.
Per configurare l'aspetto del controllo Button, regolare le proprietà del controllo selezionando il controllo (nella scheda Struttura o nella finestra Anteprima) e modificandone le proprietà nella scheda Proprietà. Proprietà specifiche di cui si desidera essere a conoscenza:
Ecco il contenuto del file di risorse di layout utilizzato per generare la schermata mostrata nella sezione precedente. Contiene tre controlli. RelativeLayout organizza i controlli sullo schermo, ovvero i due controlli figlio, un pulsante e un pulsante ImageButton, come mostrato qui:
Per ora, se si avvia questa applicazione, vengono visualizzati i controlli del pulsante, ma non succede nulla se si fa clic su di essi. Ora è il momento di gestire i clic sui controlli. Ci sono diversi modi per farlo.
Iniziamo con il modo semplice. I controlli Button e ImageButton hanno una proprietà chiamata onClick (mostrata come "On Click" nel riquadro delle proprietà) ... Si imposta il nome del metodo che gestirà il clic con questa proprietà e quindi lo implementerà all'interno dell'attività. Ad esempio, puoi impostare la proprietà del tuo controllo Button su onMyButtonClick. In XML, questa proprietà apparirebbe come:
Android: onClick = "onMyButtonClick"
Quindi, nella classe Attività, è necessario implementare questo metodo. Dovrebbe essere un metodo public void con un singolo parametro, un oggetto View. Ad esempio, la seguente implementazione di clic sui pulsanti genera un messaggio Toast sullo schermo quando viene fatto clic sul controllo Button:
pubblico vuoto onMyButtonClick (Visualizza vista) Toast.makeText (questo, "Pulsante cliccato!", Toast.LENGTH_SHORT) .show ();
Quando si fa clic sul controllo Button, viene chiamato il metodo onMyButtonClick (), che visualizza il messaggio Toast sullo schermo. I dettagli di ciò che fa il controllo Button dipende da te. Ecco come appare il messaggio Toast quando hai premuto il controllo Button:
L'altro modo per implementare la gestione dei clic è registrare un nuovo View.OnClickListener con il controllo pulsante utilizzando il metodo setOnClickListener (). Invece di impostare la proprietà On Click del controllo del pulsante nella risorsa di layout su un metodo che devi implementare, lo fai a livello di programmazione all'interno della tua attività. Anche se questo potrebbe sembrare un sacco di codice in più da scrivere, è importante almeno comprenderlo, in quanto i clic non sono l'unico evento che valga la pena gestire su determinati controlli. Il metodo programmatico che stiamo per mostrare ti applica ad altri eventi come i clic lunghi.
Per utilizzare questo metodo, è necessario aggiornare la classe Attività per registrarsi per i clic di controllo. Questo è tipicamente fatto all'interno del metodo onCreate () della tua attività. Recuperare il controllo utilizzando il metodo findViewById () e quindi utilizzare il metodo setOnClickListener () per definire il comportamento del controllo quando si fa clic. Dovrai implementare il metodo onClick () dell'interfaccia tu stesso. Ad esempio, il seguente codice (inserito nel metodo onCreate () dell'attività) registra un gestore di clic per il controllo ImageButton.
ImageButton myImageButton = (ImageButton) findViewById (R.id.ImageButton01); myImageButton.setOnClickListener (new View.OnClickListener () public void onClick (View v) Toast.makeText (BasicButtonActivity.this, "ImageButton cliccato!", Toast.LENGTH_SHORT) .show (););
Allo stesso modo, è possibile utilizzare questa tecnica per implementare la gestione di lunghi clic utilizzando il metodo setOnLongClickListener () del controllo.
I controlli pulsante sono comunemente usati nelle interfacce utente delle applicazioni Android. In questo suggerimento rapido hai imparato come creare due diversi tipi di controlli pulsante Android: il pulsante e ImageButton. Hai anche appreso diversi modi per implementare i gestori dei clic sui pulsanti per questi tipi di controlli.