GoogleMap更改了相机的中心

时间:2016-09-10 14:28:32

标签: android google-maps android-studio

我有一个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”图片。

enter image description here

3 个答案:

答案 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));