在Google地图中缩放动画

时间:2017-05-23 22:25:05

标签: java android api google-maps

我正在Google Maps API了解Android,我刚刚学会了如何做到这一点。

@Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;

    mMap.setMapType(GoogleMap.MAP_TYPE_TERRAIN);
    // Add a marker in Uman and move the camera
    LatLng uman = new LatLng(48.754683, 30.216339 );
    mMap.addMarker(new MarkerOptions().position(uman).title("Home Town"));
    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(uman, 10));
}

但是我没有将地图直接加载到标记中,而是希望它加载完全缩小,然后放大动画中的标记......

真的希望有道理......

3 个答案:

答案 0 :(得分:4)

这样做而不是mMap.moveCamera(..)

@Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;

    mMap.setMapType(GoogleMap.MAP_TYPE_TERRAIN);
    // Add a marker in Uman and move the camera
    LatLng uman = new LatLng(48.754683, 30.216339 );
    mMap.addMarker(new MarkerOptions().position(uman).title("Home Town"));
    mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(uman, 10));
}

答案 1 :(得分:2)

试试这个......

@Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;

    mMap.setMapType(GoogleMap.MAP_TYPE_TERRAIN);
    // Add a marker in Uman and move the camera
    LatLng uman = new LatLng(48.754683, 30.216339 );
    mMap.addMarker(new MarkerOptions().position(uman).title("Home Town"));
    mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(uman, 10));
    Handler handler = new Handler();
    handler.postDelayed(new Runnable() {
        public void run() {                       
            mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(uman, 16));
        }
    }, 1000);
}

答案 2 :(得分:0)

对于动画,将moveCamera替换为animateCamera

java

map.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng, 15));

kotlin:

 val cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, 15f)
 map.animateCamera(cameraUpdate)
相关问题