我有一个googlemap
在谷歌地图的顶部,我有另一种布局
我的问题是,我的另一个布局涵盖了精确定位的位置
如何更改地图的中心。
(请参阅我的照片下面的例子)。
到目前为止,这是我的代码。
@Override
public void onMapReady(GoogleMap googleMap) {
MapsInitializer.initialize(getApplicationContext());
gMap = googleMap;
if (gMap != null) {
MarkerOptions markerOptions = new MarkerOptions();
LatLng latLng = new LatLng(Double.parseDouble(App.getShopLat()), Double.parseDouble(App.getShopLng()));
markerOptions.position(latLng);
markerOptions.title(App.getShopname());
gMap.addMarker(markerOptions);
gMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
gMap.animateCamera(CameraUpdateFactory.zoomTo(12));
}
}
我想要获得字母“B”图片。
答案 0 :(得分:0)
看一下这个答案:https://stackoverflow.com/a/19061524/5923606
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(new LatLng(Lat, Lon))
.zoom(12)
.build();
gMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
答案 1 :(得分:0)
为此你需要CameraUpdate类并设置类似于此的新LatLngBounds
// Width and height are calculated for your screen
public static CameraUpdate newLatLngBounds(
LatLngBounds bounds, int width, int height, int padding)
以下是用于更改地图相机位置的docs。它清楚地表明你不能使用预先布局。
答案 2 :(得分:0)
只需添加 .target(新的LatLng(纬度,经度) 相机指向目标的位置。
示例:强>
CameraPosition cPosition = new CameraPosition.Builder()
.target(new LatLng(latitude, longitude)) //Sets the center of the map
.zoom(18)
.build();
map.animateCamera(CameraUpdateFactory.newCameraPosition(cPosition));