簡體   English   中英

如何在Android中的地圖活動中放大標記

[英]How to zoom in on a marker in a map activity in android

嗨,我想知道如何在android地圖活動中緩慢放大標記。 目前,我的應用程序剛剛打開,放大了標記。 打開應用程序后,我希望它緩慢放大。

這是我當前的代碼

LatLng mark = new LatLng(21.197384, 6.369441);
mMap.addMarker(new MarkerOptions().position(mark).title("Marker for Mark"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(mark));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel));

使用mMap.animateCamera而不是mMap.moveCamera

另外,您可以使用以下命令控制移動的持續時間

animateCamera (CameraUpdate update, int durationMs, GoogleMap.CancelableCallback callback)

在您的示例中,更改

mMap.moveCamera(CameraUpdateFactory.newLatLng(mark));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel));

對於

mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel));

或者,如果您希望運動持續200ms:

mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel), 200, null);

試試mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel)); 代替

mMap.moveCamera(CameraUpdateFactory.newLatLng(mark));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel));

通過這種方式,您可以實現-

CameraUpdate center= CameraUpdateFactory.newLatLng(new LatLng(latitude_origin, longitude_origin));
CameraUpdate zoom = CameraUpdateFactory.newLatLngZoom(new LatLng(latitude_origin, longitude_origin),3);
  googleMap.animateCamera(center);
  googleMap.animateCamera(zoom);

希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM