我从数据库中检索信息,所有信息都在游标中。现在我需要遍历光标中的每个项目以检索 lng lats 和要在 map 上显示的名称。
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));
我有一个名为 fecthAllSpots()
的方法,它会返回游标中的许多项目,我该如何从该游标中的每一行中检索每个经纬度和名称?
最佳答案
您可以使用 while 循环迭代游标返回的所有行。
while(c.moveToNext()){
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));
}
当然,您必须对 lat、lng 和 name 变量做一些事情,因为它们会在每次迭代时被覆盖。我建议你实现一个 DBLocation 类,它可以存储位置的名称、经度和纬度。然后,您可以将通过游标创建的所有对象存储在数组或列表中。
关于java - 如何从android中的游标检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6395887/