Android中的标记动画谷歌地图v2

时间:2013-02-22 11:22:21

标签: android google-maps-android-api-2

我正在使用数据库中的坐标逐个添加标记到mapView。我需要在时间设置所有标记的动画。

在循环中为每个添加的标记添加动画,但其仅用于最后添加的标记

    **code for adding markers to map is:**

    Marker marker;



         do
            {

            marker= mapView.addMarker(new MarkerOptions()
                                                .position(new LatLng(latitude, longitude))
                                                .icon(BitmapDescriptorFactory
                                                        .fromBitmap((bitmap)))
                                                .snippet(text + "             ")
                                                .title(mine_name));

   //handling animation
  applyed Bounce Interpolator
       final Handler handler = new Handler(); 
                                  final long start = SystemClock.uptimeMillis(); 
                                  Projection proj =mapView.getProjection(); 
                                  Point startPoint =proj.toScreenLocation(new LatLng( latitude,longitude)); 
                                  startPoint.offset(0, -100); 
                                  final LatLng startLatLng = proj .fromScreenLocation(startPoint);
                                  final long duration = 1500; 
                                  final Interpolator interpolator = new BounceInterpolator();
                                  handler.post(new Runnable() {

                                  @Override public void run() { 
                                      long elapsed =SystemClock.uptimeMillis() - start;
                                      float t =interpolator .getInterpolation((float) elapsed /
                                  duration); 
                                      double lng = t * new LatLng(latitude,longitude).longitude + (1 - t) *
                                  startLatLng.longitude; 
                                      double lat = t * new LatLng(latitude, longitude).latitude + (1 - t) *
                                  startLatLng.latitude; 
                                      marker.setPosition(new LatLng(lat, lng)); 
                                      if (t < 1.0) { 
                                      // Post again 16ms later.
                                  handler.postDelayed(this, 32); } } });

                }while(count>0)

但它适用于最后添加的引脚。 我需要及时为所有引脚制作动画(即动画同时反映到引脚)

提前致谢。

0 个答案:

没有答案