Codice - Associazione di azioni ai bottoni e onClickListener
Dobbiamo ora associare un'azione al bottone.
Per prima cosa recuperiamo il bottone con il solito metodo:
Button b = (Button)findViewById(R.id.bottone);
Aggiungiamo ora il listener per l'evento OnClick al bottone, come veniva normalmente fatto per i bottoni di AWT o Swing.
Il metodo b.setOnClickListener(<OnClickListener>); richiede come parametro un'istanza di una classe che implementi l'interfaccia OnClickListener.
Usualmente noi aggiungeremmo alla nostra classe MainActivity implements OnClickListener, quindi, nell'unico metodo onClick(View v) dovremmo inserire tutte le azioni, individuando i vari bottoni con una cascata di if.
Per evitare questo, si utilizza una caratteristica delle nuove versioni di Java. Al posto di un'istanza di classe esistente, ne creiamo una all'interno della chiamata:
Questo metodo crea un'istanza di una classe anonima che implementa OnClickListener.
Tra le graffe dovremo scrivere l'implementazione della nuova classe, che nel nostro caso vorrà dire scrivere un metodo onClick che si implementi l'interfaccia.