1. Gewinne jetzt ein UMiDIGI C Note - alle Informationen findest du hier!!
  1. gweir, 08.05.2012 #1
    gweir

    gweir Threadstarter Neuer Benutzer

    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();
    		}
    
     
  2. swordi, 08.05.2012 #2
    swordi

    swordi Gewerbliches Mitglied

  3. gweir, 08.05.2012 #3
    gweir

    gweir Threadstarter Neuer Benutzer

    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.
     
  4. Thyrion, 08.05.2012 #4
    Thyrion

    Thyrion Ehrenmitglied

    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.
     
  5. gweir, 08.05.2012 #5
    gweir

    gweir Threadstarter Neuer Benutzer

    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" />
    
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[OFFEN] Doubletap auf den Screen Android App Entwicklung Samstag um 18:15 Uhr
[OFFEN] WebView Probleme Android App Entwicklung 19.05.2017
[ERLEDIGT] Instanzierung aus XML Android App Entwicklung 11.04.2017
[ERLEDIGT] GIF in WebView mehrmals abspielen Android App Entwicklung 02.04.2017
Wie erstelle ich Icons für die Items im Navigation Drawer (xml Format) Android App Entwicklung 09.12.2016
Unschönes XML parsen Android App Entwicklung 30.11.2016
Benutzerdefinierte Farben in XML Layout Android App Entwicklung 02.07.2016
Du betrachtest das Thema "XML(SVG) in Webview" im Forum "Android App Entwicklung",