Android-image-map. - Anzeige ein .svg und verwenden Sie es als ein Bild anzeigen (touch-Zonen)
Ich bin auf der Suche nach einem Weg, um ein Bild anzeigen und der Benutzer Tippen Sie auf verschiedene Teile des Bildes zu navigieren und Aktionen auszuführen.
Ich überlegte, mit einem unsichtbare Farbe anzeigen zu überprüfen, welche Teile berührt worden.
Da ich aber auch hervorheben wollen, die nur ausgewählte Bereiche, ich dachte, der Verwendung von Vektoren.
Es ist eine schöne Bibliothek zum Rendern von svg-Dateien in eine image-anzeigen hier, aber es nicht in Griff berührt.
Gibt es eine Bibliothek gibt, die funktioniert? Oder irgendein schlauer Weg, dies zu tun?
(Ich auch ausgecheckt dieses Projekt, aber es wird nicht schlucken .svg-Dateien und meine Vektor-Bild ist viel zu Komplex, um legen Sie alle Daten von hand)
- wie über das erstellen einer overlay auf der Oberseite des bildreihen Blick, der Griff berühren und markieren Sie dann das Bild mit Hilfe von Koordinaten?
- Wenn im Grunde brauchen Sie nur svgs, wenn webviews sind um, du bist zu Hause und trocken, mit danbrough Antwort?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Interessantes problem! Ich bin nicht überzeugt, dass Sie nicht verwenden können, eine Kombination von Bibliotheken, die Sie erwähnt.
Was ich tun würde, ist die erste Verwendung von SVG-Android programmatisch zu Lesen in Ihrem SVG-Datei. Blick auf SVG-Android, wie es aussieht, gibt es das Finale Produkt als ein
PictureDrawable
, welche eine Unterklasse von Drawable.Direkt nach SVG-Android beendet die Verarbeitung der SVG-Grafik, die ich verwenden würde, Bildansicht.setImageDrawable zum laden der Haupt -
ImageView
mit derPictureDrawable
wir gerade erzeugt. Dann würde ich nur verwenden, dassImageView
als Basis für die Umsetzung von "Bilder mit Anklickbaren Bereichen" Sie verknüpft die ursprüngliche Frage.Ehrlich, ich denke, der schwierigste Teil wird die erste SVG-Android, um korrekt zu arbeiten (ich ' ve spielte mit ihm ein wenig, und es ist ein bisschen pingelig). Allerdings, ich nicht denke, dass Sie haben viel Mühe, die Kombination der SVG-drawable erzeugt, mit der Sie klickbare Bereiche. Es ist eine einfache änderung in der Quelle der Basis-image.
Glück!
Nicht sicher, ob dies ist die Art von Sache, die Sie nach sind aber hier ist ein Beispiel, klicken Sie auf aktiviert svg in einem Android WebView:
Es sollte zeigen, ein Roter Kreis, die Sie anklicken können und der Kreis der änderung der Größe.
Hier ist das gleiche Beispiel, überarbeitet mit der svg-laden Sie aus dem Ordner "assets" und ein android-javascript-Schnittstelle ausgesetzt, so dass Sie tun-Rückrufe in android code aus deiner svg-Datei.
und den test.svg-Datei:
Es ist sehr, sehr einfach 😉
Müssen Sie erstellen Sie eine javascript-Schnittstelle zu handhaben, klicken Sie auf " aus web-Ansicht, und fügen Sie diese Datei, um Ihre web-Ansicht. Nur fließen die Schritt:
1) Erstellen Sie JavaScript-Schnittstelle
2) Hinzufügen von Schnittstellen zu web-Ansicht
3) Bearbeiten der svg-Datei gleichen