Android Viewpager de l'enregistrement des données et vues
J'espère que quelqu'un peut m'aider avec un léger problème/de la confusion que j'ai avec Viewpagers et l'enregistrement des données.
PROBLÈME:
Lorsque le défilement sur les quatre points de vue que j'ai, le premier point de vue a deux roulettes, deux textviews que l'affichage d'une chaîne ou d'un élément sélectionné. si j'ai faites défiler jusqu'à la troisième page et de revenir à la deuxième page, les données dans le premier point de vue est perdu. hense avoir à enregistrer les données.
Serait-ce le fait dans les deux routines énoncés ci-dessous? (meilleure estimation, c'est qu'il serait) si oui, quel type de commandes ont besoin d'être déclaré?
CODE:
@Override
public void restoreState(Parcelable arg0, ClassLoader arg1) {
}
@Override
public Parcelable saveState() {
return null;
}
INFOS SUPPLÉMENTAIRES:
le viewpager est utilisé dans
public Object instantiateItem(View collection, int position) {
}
La liste complète des méthodes sont les suivantes:
@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
((ViewPager) arg0).removeView((View) arg2);
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == ((View) arg1);
}
@Override
public Parcelable saveState() {
return null;
}
@Override
public void finishUpdate(View arg0) {
}
@Override
public void restoreState(Parcelable arg0, ClassLoader arg1) {
}
@Override
public void startUpdate(View arg0) {
}
OriginalL'auteur Hadden11 | 2012-01-17
Vous devez vous connecter pour publier un commentaire.
Au lieu de l'enregistrement de l'état de ces pages, vous pourriez modifier votre ViewPager donc les tampons de l'ensemble de vos pages au lieu de les détruire et recréer lorsque vous faites défiler.
Ainsi, par exemple, si vous avez 4 pages:
Maintenant vos pages seront conservés "en vie"
Être prudent avec cette technique, cependant, car il va augmenter la consommation de mémoire. Le nombre passé setOffscreenPageLimit() est le nombre de pages de chaque côté de la page en cours à conserver. Dans ce cas, nous avons 4 pages au total donc, dans le pire des cas, c'est lorsque nous sommes à l'extrême limite de la mise en page, nous avons la page actuellement visible, puis les 3 autres pages sont hors de l'écran d'un côté et sont donc conservés en mémoire. Cependant, avec un plus grand ensemble de données, il pourrait signifier 7 pages sont conservées en mémoire (page actuelle, plus 3 de chaque côté).
Généralement la meilleure solution optimale serait de gérer correctement le déchargement et le rechargement de la page d'état et de re-rendre.
Espère que cette aide
ne sais pas si c'est quelque chose que je fais mal, mais lors de la saisie que hors de l'écran limite il est livré avec de --> La méthode setOffscreenPageLimit(int) n'est pas défini pour le type ne semble pas comme étant liée à un viewpager
ce qui ne l'importation ressembler pour votre viewpager? doit être importation android.de soutien.v4.vue.ViewPager;
le viewpager import android.de soutien.v4.vue.ViewPager, j'ai ré-importé juste au cas où son besoin avec l'édition à l'écran hors tension à la limite de page. la solution eclipse apporte est d'ajouter de la fonte à viewpager, et en fait un objet si vous cliquez sur ce
Les docs pour viewpager: developer.android.com/reference/android/support/v4/view/... et la méthode qui y sont énumérés?
OriginalL'auteur Dean Wild