2016-04-28 7 views
13

Ich verwende derzeit Google Maps und möchte ein animiertes Gif als Overlay in meiner App verwenden. Das ist wirklich frustrierend, da es auf der iOS-Version der App sehr einfach zu sein scheint, also möchte ich wirklich etwas Cooles erreichen.Verwenden eines animierten Gif als Boden Overlays in G. Maps v2

Das Ergebnis Ich mag würde, um zu sehen ist auf 23s dieses Video: https://www.youtube.com/watch?v=JI323jA67x0#t=23s

Der Boden-Overlays scheint die Bast Praxis, aber nicht akzeptiert animiertes Gif:

LatLng NEWARK = new LatLng(40.714086, -74.228697); 

GroundOverlayOptions newarkMap = new GroundOverlayOptions() 
     .image(BitmapDescriptorFactory.fromResource(R.drawable.newark_nj_1922)) 
     .position(NEWARK, 8600f, 6500f); 

// Add an overlay to the map, retaining a handle to the GroundOverlay object. 
GroundOverlay imageOverlay = map.addGroundOverlay(newarkMap); 

https://developers.google.com/maps/documentation/android-api/groundoverlay#add_an_overlay

+0

Danke für die negative Abstimmung, kann jemand erklären? Auch wenn mein Englisch nicht perfekt ist, denke ich, dass die Frage gut erklärt ist, mit einem Video des Ergebnisses, dem Code, den ich benutze, als ich versuchte, es zu erreichen. –

+0

Welchen Fehler erhalten Sie? Welche Android Version verwendest du? –

Antwort

5

Als Lösung haben wir die GIF in mehrere Bilder zerlegt und wir sind die gesamte Bildliste looping.

Wir verwenden den gleichen Code wie oben und alles ist in Ordnung.

Die Verwendung von ImageView + Glide, wie unten beschrieben, hilft überhaupt nicht, da das Bild nicht mit der Karte verschoben werden kann.

3

Sie können Open-Source-Bibliothek verwenden GIF-Bild in einem einzigen Bildansicht angezeigt werden nur die Abhängigkeit https://github.com/bumptech/glide

hinzufügen und seine einfach, diesen ein Beispielcode

ImageView imageView = (ImageView) findViewById(R.id.imageView); 
GlideDrawableImageViewTarget imageViewTarget = new GlideDrawableImageViewTarget(imageView); 
Glide.with(this).load(R.raw.sample_gif).into(imageViewTarget); 
+1

Leider bewegen sich die ImageView-Grenzen nicht mit Map Move/Tilt/Zoom –

0

@waza_be derzeit Boden-Overlay nicht funktioniert verwenden unterstütze animierte gif. Hoffentlich werden sie es bald haben. Es war möglich, mit Version 1 ImageView zu verwenden und es der Karte hinzuzufügen. aber in Version 2 verwarfen sie das Hinzufügen von Ansichten zur Karte.

Verwandte Themen