Bonjour,
j'ai une appli très simple dont le code est le suivant :
Alors voila, j'affiche une valeur string passé en argument de l'activité précedente. La valeur s'affiche sans pb. Ce que je ne comprends pas, c'est quand je clique sur le bouton home du telephone, et que je reviens dans l'appli, (on passe donc pas le onresume seulement), je lui demande de me ré afficher dans la textview la valeur du string "value". Et cette valeur est conservée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 public class pageOK extends Activity { private static String value = null; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Bundle extras = getIntent().getExtras(); if (extras != null) { value = extras.getString("TEXT_USER"); } if(value.length()==0){ value = "Vous n'avez écrit aucun texte"; } setContentView(R.layout.pageok); final TextView TW1 = (TextView) findViewById(R.id.textView1); TW1.setText(value); final CheckBox CB1 = (CheckBox) findViewById(R.id.checkBox1); CB1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub finish(); } }); // TODO Auto-generated method stub } @Override public void onResume(){ super.onResume(); final TextView TW1 = (TextView) findViewById(R.id.textView1); TW1.setText(value); } @Override public void onPause(){ super.onPause(); } }
Je me pose donc la question de l'utilité des fonctions
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 public void OnSaveInstanceState(Bundle savedInstanceState)
Ces deux fonctions sont censés être utilisées pour conserver les données lorsque l'appli passe en arriere plan. Quel est l'interet si toutes les données sont déja conservée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 public void onRestoreInstanceState(bundle ....)
Je pensais que l'appli ne mafficherait rien dans ma textview en passant par onResume, car "value" obtiens sa valeur seulement dans le onCreate(), et est null à l'initialisation..
Voila si vous pouvez m'éclairer ce n'est pas de refus
Bonne journée
Partager