XML(SVG) in Webview

G

gweir

Neues Mitglied
0
Hallo,

ich möchte ein SVG welches ja nichts anders als eine XML Datei ist darstellen. Da die WebView für mich das Zoomen übernimmt nehme ich diese. Das funktioniert auch soweit.

Mein XML enthält nun intern jedoch links auf Bilder die neben der Datei liegen.
Diese Bilder werden in der WebView korrekt dargestellt wenn ich folgenden Aufruf nutze.

Code:
mWebView.loadUrl(uri.toString());

lade ich die Daten jedoch wie folgt. Wird das SVG weiterhin angezeigt die zusätzlichen Bilder jedoch nicht. Weiß jemand woran das liegen kann? Mache ich einen Fehler beim erstellen des XML Dokuments?

Ich wäre für Hinweise oder Ideen dankbar.

Code:
mWebView.loadData(xmlReader.getmXmlContent(), "text/xml", "UTF-8");

Der XML Konten wird so erstellt

Code:
try {
		this.mUrl = new URL(mUri.toString());
			
		//get DOM from XML File
		DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
		DocumentBuilder db = dbf.newDocumentBuilder();
		Document doc = db.parse(new InputSource(mUrl.openStream()));
		doc.getDocumentElement().normalize();
		//get IMG Links
		NodeList nl = doc.getElementsByTagName("image");
			
		//get Content from XMLDoc
		TransformerFactory tf = TransformerFactory.newInstance();
		Transformer t = tf.newTransformer();
		t.setOutputProperty(OutputKeys.INDENT, "yes");
		StringWriter sw = new StringWriter();
		t.transform(new DOMSource(doc), new StreamResult(sw));
		mXmlContent = sw.toString();
		mDoc = doc;
			

		} catch (Exception e) {
			e.printStackTrace();
		}
 
Stimmt Android ansich unterstützt SVG nicht. Der WebView ist das allerdings egal da sie scheinbar auch XML interpretieren kann.

Wie gesagt der Aufruf mit loadUrl(DateiPfad); führt dazu, dass das XML (SVG) korrekt dargestellt wird.
 
Sind die Pfadangaben zu den eingebetteten Bildern relative Pfade oder absolute Pfade?

EDIT:
Code:
A) mWebView.loadUrl(uri.toString());
B) mWebView.loadData(xmlReader.getmXmlContent(), "text/xml", "UTF-8");
A) Hier ist der Basis-Pfad ja bekannt.
B) Hier nicht.
 
Hallo Thyrion,

ich bin mir nicht sicher ob ich dich richtig verstanden habe. Der Pfad zu dem Bild ist in der XML definiert.

Das Verhalten welches ich beobachten konnte ist gleich egal ob ich den Pfad relativ setzte oder absolut wie unten.

Code:
<image x="1480" y="4770" width="400" height="141" xlink:href="file:///sdcard/InventoryListCreator/img0.jpg" />
 

Ähnliche Themen

K
Antworten
3
Aufrufe
1.164
Kapikalaani
K
D
Antworten
23
Aufrufe
2.505
Data2006
D
H
Antworten
0
Aufrufe
929
HoustonWeHaveAProblem
H
Zurück
Oben Unten