2010-08-17 4 views
0

amis,problème lié à l'orientation de l'écran de téléphone Android?

je suis confronté à un problème lié à l'orientation de l'écran du téléphone android

Si je change l'orientation du téléphone, il perd le contexte, si je suis au milieu de remplir un simple formulaire. Donc, le téléphone est vertical, j'utilise un clavier souple, je le rend horizontal, de sorte que je puisse facilement utiliser le clavier à nouveau ou quelque chose d'autre, et kaboom, tout ce que j'ai entré jusqu'ici est perdu. Quelqu'un peut-il me guider quelle est la solution pour garder les données et l'état même après le changement d'orientation?

toute aide serait appriciée.

+0

hmm ... pourriez-vous dépasser un code plus pertinent? Konstantin a raison de dire que l'activité est recréée, mais je n'ai pas pu reproduire le problème sur un simple formulaire avec des champs de saisie. – Juri

Répondre

1

C'est parce que l'activité est réellement recréée lors du changement d'orientation. Vous devez enregistrer votre état avant le changement, puis le restaurer. Remplacez onSaveInstanceState pour enregistrer vos données dans un bundle. Les données sont ensuite accessibles sur onCreate (en regroupant à nouveau le bundle).

@Override 
protected void onSaveInstanceState(Bundle outState) { 
     outState.putSerializable("Key", "Some data"); //put some data 
     super.onSaveInstanceState(outState); 
}