我正在尝试使用数据库将地图标记添加到我的地图中,并且由于某种原因它没有出现。相机正在移动到该位置,但未放置地图标记。请向我解释我如何解决这个问题。 这是我的地图活动代码:
private void moveCamera(LatLng latLng, float zoom, String title){
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, zoom));
DataBaseHelper myDb = new DataBaseHelper(this);
List<LatLng> lls = myDb.getAllLatLng();
for (LatLng ll: lls){
LatLng coordinates = new LatLng(ll.latitude, ll.longitude);
MarkerOptions options = new MarkerOptions()
.position(coordinates)
.title(title)
.snippet(showDetails.getText().toString());
mMap.addMarker(options);
myDb.close();
}
这是我的数据库代码:
public List<LatLng> getAllLatLng(){
SQLiteDatabase db = this.getReadableDatabase();
List<LatLng> latLngs = new ArrayList<LatLng>();
String selectQuery = "SELECT * FROM " + TABLE_NAME;
Cursor cursor = db.rawQuery(selectQuery, null);
// looping through all rows and adding to list
if (cursor.moveToFirst())
{
do
{
double x,y;
x = Double.parseDouble(cursor.getString(4));
y = Double.parseDouble(cursor.getString(5));
LatLng ll= new LatLng(x,y);
// Adding contact to list
latLngs.add(ll);
}while(cursor.moveToNext());
}
return latLngs;
}
由于