2

Googleマップを使用するアンドロイドアプリケーションを開発しています。 MapViewにいくつかの座標を持つオーバーレイ画像を表示したい。私はイメージをアニメートする必要があります。助けてください。私はこれを行うのは難しいことだと考えていマップビューでマーカー(オーバーレイ)画像をアニメーション化するには

mapView = (MapView) findViewById(R.id.myGMap); 
    mapView.setBuiltInZoomControls(true); 
    mapController = mapView.getController(); 
    mapView.buildDrawingCache(); 
    mapView.setAnimationCacheEnabled(true); 
    mapView.setClickable(true); 
    mapView.getZoomLevel(); 
    mapView.displayZoomControls(true); 
    mapView.getMapCenter(); 

    List<Overlay> mapOverlays = mapView.getOverlays(); 

    drawable = getResources().getDrawable(R.drawable.img1); 
    HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable); 

    int latitudeE6 = (int)((12.907382) * 1000000); 
    int longitudeE6 = (int)((77.595105) * 1000000); 
    point = new GeoPoint(latitudeE6,longitudeE6);  
    overlayitem = new OverlayItem(point, "", ""); 
    mapController.animateTo(point);  
    itemizedoverlay.addOverlay(overlayitem); 
    itemizedoverlay.getCenter(); 
    itemizedoverlay.getFocus(); 

    mapOverlays.add(itemizedoverlay); 
+0

私はこのようなものに苦労しています。助けてください。 – stanley

答えて

0

を次のように私のコードですが、次のようにアルファアニメーションを作成するために、描画可能からアルファの機能を使用することができます。

drawable.setAlpha(); 
3
public static void addAnimationToMap(MapView map, int animationResourceId, GeoPoint geoPoint) 

{ 
final ImageView view = new ImageView(map.getContext()); 

    view.setImageResource(animationResourceId); 

    //Post to start animation because it doesn't start if start() method is called in activity OnCreate method. 
    view.post(new Runnable() { 
     @Override 
     public void run() { 
      AnimationDrawable animationDrawable = (AnimationDrawable) view.getDrawable(); 
      animationDrawable.start(); 
     } 
    }); 

    map.addView(view); 

    MapView.LayoutParams layoutParams = new MapView.LayoutParams(
     MapView.LayoutParams.WRAP_CONTENT, 
     MapView.LayoutParams.WRAP_CONTENT, 
     geoPoint, 
     MapView.LayoutParams.BOTTOM_CENTER); 
    view.setLayoutParams(layoutParams); 
} 

することができますres-> drawableにアニメーションリストを追加し、drawableをこの関数に渡します。 AFAIK Googleマップにアニメーションマーカーを追加する唯一の方法は、地図の上にビューを追加することです。

関連する問題