2 votes

Comment sauvegarder le curseur dans l'activité ?

Je population mon listView en utilisant Cursor, mais quand je navigue loin de mon activité et puis revenir mon listview est vide. Voici mon code :

@Override
public void onCreate(Bundle savedInstanceState) {

...

DBAdapter db = new DBAdapter(context);
db.open();
Cursor c = db.getAll();
db.close();

startManagingCursor(c);
String[] columns = new String[] { ... };
int[] to = new int[] { ... };
SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this, R.layout.list_item, c, columns, to);
this.setListAdapter(mAdapter);

...

}

J'ai vu ici des questions sur la sauvegarde de la position du curseur, mais pas du curseur lui-même. J'ai probablement raté quelque chose, dois-je sauvegarder mon curseur (comment puis-je le faire ?) ou est-il préférable (plus rapide, moins cher) de créer un nouveau curseur à chaque fois en utilisant mon adaptateur DB ?

Merci

3voto

WarrenFaith Points 28137

startManagingCursor() fait de votre close() appel inutile. Tant que vous n'avez pas reçu d'exceptions pour ne pas avoir finalisé ou fermé votre curseur, vous avez fait ce qu'il fallait.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X