Quand à fermer le curseur dans Android?
J'ai une application qui utilise le curseur pour sélectionner des données via rawQuery de sqlite db pour remplir une ListView dans Android;. Chaque fois que l'utilisateur clique sur un élément de liste j'ai créer une nouvelle instance de l'Activité pour remplir à nouveau la liste. Est-il mieux d'appeler cursor.close()
et db.close()
pour éviter les problèmes de mémoire? En fait, j'ai db.close()
dans OnDestroy()
de mon activité.
- cela pourrait peut-être aider stackoverflow.com/questions/8532427/...
Vous devez vous connecter pour publier un commentaire.
Vous pouvez fermer la
cursor
une fois que vous avez récupéré les valeurs de cet objet particulier à l'intérieur de votre méthode.btw...Vous n'avez pas à recréer un
listview
tous les temps pour un utilisateur, cliquez sur l'événement. Informe simplement qu'il y a un peu de changement dans les données de votre carte qui a été mis sur la liste.Quelque chose comme
Cela devrait remplir de nouveau contenu à l'intérieur ur
listview
automatiquement.Eh bien, si vous créez une nouvelle instance à chaque fois de la même Activité (même si je ne suis pas sûr que ses une bonne programmation de la pratique). Vous pouvez fermer le curseur dès que vous avez terminé la traversée /itération dans la source de la listview.
Exemple:
Un exemple de mise en œuvre serait quelque chose comme