在我正在开发的一个应用中,我必须在片段的onCreateView中以中心作为用户之前选择的坐标来显示一个小地图(以像素为单位,将是250x250或类似的地图)我得到了新的Lat和Lng,我在这一点上设置了相机和一个标记但是地图视图没有居中,因为如果我将地图稍微向左拖动,我可以显示标记,放在正确的位置。
如何根据片段的宽度和高度将地图居中到新的Lat和Lng?
这是我用来居中地图的代码,在更大的视图中,地图中心是正确的,但在较小的视图中,中心会向右移动一点。
mapa.moveCamera(CameraUpdateFactory.newLatLngZoom(posMap, 11));
答案 0 :(得分:0)
也许只是将地图置于标记中心?像那样:
map.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
@Override
public void onMapLoaded() {
map.addMarker(new MarkerOptions().position(new LatLng(lat, lng)).title(markerTitle));
map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(lat, lng), 14));
map.setMyLocationEnabled(true);
}
});
其中 lat 和 lng 分别是标记纬度和经度的双倍值。