Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
Chapitre 5
Utilisation des layouts XML 33
Fin de l’histoire
Dans le premier exemple Now, le texte du bouton affichait l’heure à laquelle on avait
appuyé dessus pour la dernière fois (ou l’heure à laquelle l’activité avait été lancée).
L’essentiel du code fonctionne encore, même dans cette nouvelle version (que nous appellerons NowRedux). Cependant, au lieu d’instancier le bouton dans la méthode onCreate(),
nous faisons référence à celui qui est décrit dans l’agencement XML :
package com.commonsware.android.layouts;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import java.util.Date;
public class NowRedux extends Activity
implements View.OnClickListener {
Button btn;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
btn=(Button)findViewById(R.id.button);
btn.setOnClickListener(this);
updateTime();
}
public void onClick(View view) {
updateTime();
}
private void updateTime() {
btn.setText(new Date().toString());
}
}
La première différence est qu’au lieu de créer la vue dans le code Java nous faisons référence au fichier XML de positionnement (avec setContentView(R.layout.main)). Le
fichier source R.java sera mis à jour lorsque le projet sera recompilé, afin d’inclure une
référence au fichier de positionnement (main.xml du répertoire res/layout).
La seconde différence est qu’il faut retrouver l’instance de notre bouton en appelant la
méthode findViewById(). Comme l’identifiant de ce bouton est @+id/button, nous
pouvons désigner son identifiant numérique par R.id.button. Il reste ensuite à mettre en
place l’écouteur d’événement et à configurer son label.
Livre Android.book Page 33 Dimanche, 8. novembre 2009 12:23 12
Précédent

- 48/391

Suivant