Comment faire pour récupérer des données à partir d'un curseur dans android?
Je récupérer des informations à partir de ma base de données et c'est dans un Curseur. Maintenant, j'ai besoin de passer par chaque élément dans le curseur pour récupérer gnl lats et un nom à afficher sur une carte.
Cursor c = mDbHelper.fetchSpot(15);
startManagingCursor(c);
double lat = Double.parseDouble(c.getString(c.getColumnIndexOrThrow(ParkingSpotDBAdapter.KEY_LAT)));
double lng = Double.parseDouble(c.getString(c.getColumnIndexOrThrow(ParkingSpotDBAdapter.KEY_LNG)));
String name = c.getString(c.getColumnIndexOrThrow(ParkingSpotDBAdapter.KEY_ADDRESS));
J'Ai antoher méthode appelée fecthAllSpots()
cela renvoie le nombre d'éléments dans le curseur, comment puis-je récupérer chaque gnl lat et le nom de chaque ligne dans ce curseur?
OriginalL'auteur molleman | 2011-06-18
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser une boucle while pour effectuer une itération de tous ligne sur laquelle le curseur retourne.
Bien sûr, vous avez à faire quelque chose avec la lat, lng et le nom de la variable puisqu'elles sont remplacées à chaque itération. Je vous suggère de mettre en œuvre un DBLocation classe qui peut contenir le nom, la longitude et la latitude d'un lieu. Ensuite, vous pouvez sauvegarder tous les objets que vous créez à partir du curseur dans un tableau ou une liste.
de cette façon, vous ne perdez le premier élément de la souris?
OriginalL'auteur Flo
Premier. vous pouvez simplement utiliser le getInt, getLong etc.. méthodes sur le curseur pour récupérer les valeurs plutôt que d'analyser par la suite.
La question:
ici est la sintax:
première requête de la db pour obtenir un curseur.
prochaine faire un null vérifier sur le curseur (juste au cas où, car il arrive parfois), faisable avec un bloc try catch aussi.
écriture suivante:
à la fin de fermer le curseur ou si elle est gérée, à la requête de ne rien faire de l'activité sera pour vous. Rappelez-vous tout cela en bloc et en dehors de tout le reste vous sera vérifier envisager une nullPointerException pour le curseur.
OriginalL'auteur DArkO