谷歌地图来自onMapReady的多个标记

时间:2016-10-04 18:51:10

标签: java android google-maps google-maps-api-3

我正在尝试在Google地图中添加多个标记。我面临的问题是,当添加第一个标记时,即使纬度和经度值不同,也不会添加其余部分。

我正在使用google places API获取详细信息并在google地图中绘制信息。

public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;
    LatLng MyLoc = new LatLng(lati, lngi);
    mMap.addMarker(new MarkerOptions().position(MyLoc).title("My Location"));
    mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(MyLoc, 17.0f));
    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(MyLoc, 17));
    if (places == null) {
        Toast.makeText(this, "I have no places...", Toast.LENGTH_LONG).show();
        return;
    }

    Place[] items = new Place[places.size()];
    places.toArray(items);
    for(int i=0;i<items.length;i++){
        double sLat = places.get(i).getGeometry().getLocation().getLat();
        double sLng = places.get(i).getGeometry().getLocation().getLng();
        LatLng latlngg = new LatLng(sLat, sLng);
        mMap.addMarker(new MarkerOptions()
                .position(latlngg)
                .title(places.get(i).getName())
                .snippet(places.get(i).getVicinity())
                .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE))
                .alpha(0.7f));
    }

}

1 个答案:

答案 0 :(得分:0)

您的缩放级别为17太高。我担心你的LatLng正在脱离地图视图。在显着降低缩放级别后进行交叉检查。