Precedente Indice Successiva

Codice - Associazione di azioni ai bottoni e onClickListener

Immagine slide
  • 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:
    b.setOnClickListener(new OnClickListener() {
    ...
    });

  • 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.
© Ing. Stefano Salvi - released under FDL licence

Valid XHTML 1.0! Valid CSS!