Google地图v2标记animation

有没有人知道如何在google map api v2中实现这个animation。 看看这里。 我想知道这是如何完成的。 请让我知道是否有任何人有关于此的示例代码。

提前致谢。

我find了适合我的解决scheme :

final LatLng target = NEW_LOCATION; final long duration = 400; final Handler handler = new Handler(); final long start = SystemClock.uptimeMillis(); Projection proj = map.getProjection(); Point startPoint = proj.toScreenLocation(marker.getPosition()); final LatLng startLatLng = proj.fromScreenLocation(startPoint); final Interpolator interpolator = new LinearInterpolator(); handler.post(new Runnable() { @Override public void run() { long elapsed = SystemClock.uptimeMillis() - start; if (elapsed > duration) { elapsed = duration; } float t = interpolator.getInterpolation((float) elapsed / duration); double lng = t * target.longitude + (1 - t) * startLatLng.longitude; double lat = t * target.latitude + (1 - t) * startLatLng.latitude; marker.setPosition(new LatLng(lat, lng)); if (t < 1.0) { // Post again 10ms later. handler.postDelayed(this, 10); } else { // animation ended } } }); 

欢迎您通过调用setPosition()来改变Marker的位置。 欢迎您通过在GoogleMap上使用moveTo()animateTo()应用CameraUpdate对象来随时更改“摄影机”(即地图的中心和缩放级别)的位置。 将这些与光照定时循环(例如,使用postDelayed() )结合起来应该可以实现类似的animation效果。

好消息是他Google Map API v2提供了新的Camera控件。 您可以在Android开发者团队的Youtube频道上直接查看新function以及如何使用它们。

它还提供了animation,倾斜,轴承…但我认为这个video非常详细,并且还会讨论像您的示例中那样的应用程序。

玩得开心,当你完成你的应用程序时给我一个链接。