Webview und Umlaute

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Webview und Umlaute

    Tag zusammen!
    Wie die Überschrift schon erkennen lässt hab ich ein Problem mit Umlauten in Webviews.

    In meiner App lade ich eine xml-Datei herunter (UTF-8 kodiert) und zeige dann einzelne Abschnitte in einer Webview an, damit auch Links klickbar sind ohne groß was zu tun. In Android 4 hab ich mit den Umlauten keine Probleme, allerdings werden zumindest in 2.3 die Umlaut nicht vernünftig angezeigt. Es kommt dann halt so komischer Sonderzeichen statt die richtigen Umlaute.

    Die Webview fülle ich wie folgt:

    Quellcode

    1. String description = "<meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />";
    2. description = newsItem.getDescription(); //Der Text welcher angezeigt werden soll
    3. descriptionView.loadData(description, "text/html; charset=UTF-8", null);


    Ich habe auch versucht utf-8 mit ISO-8859-15 zu ersetzen, aber das macht leider keinen Unterschied.
    Ein &-Zeichen wird komischerweise angezeigt..

    Hat jemand ne Lösung die Umlaute vernünftig in der Webview unter Android 2.3 anzeigen zu lassen?

    Gruß,
    Daniel.
  • Hi,

    ich gehe mal davon aus, dass deine Umlaute vor dem Anzeigen in der WebView, also wenn er den HTML Code zusammen bastelt, noch nicht kaputt sind.
    Ist es eine Option für dich, die Umlaute mit String.replace einfach in die jeweiligen HTML-Tags zu wandeln? (ü -> &uuml; usw.)

    Falls es was hilft, und ja ich weiß ist jetzt nicht das Schönste überhaupt, würd ich es auf jeden Fall machen. Encoding-Probleme sind ein sehr lästiges Thema, die WebView mindestens genauso. Die entsprechenden HTML-Tags dafür zu verwenden ist da noch das geringste übel finde ich.


    Gruß,
    matze
  • Danke für die Antwort, habe da auch schon dran gedacht. Wär meine Notlösung gewesen. Problem war aber nur ein kleiner Syntaxfehler meinerseits -.-
    Übersieht man gerne..Ich hatte, wie man in meinem ersten Post sieht statt "+=" nur "=" geschrieben. Die Metainformationen wurden daher einfach überschrieben.
    Jetzt hab ich
    description += newsItem.getDescription();

    geschrieben und alles funktioniert einwandfrei. Wie dämlich...
  • Hi,

    hab ich auch übersehen :D und weil dann das UTF-8 gefehlt hat wollte er es mit dem Browser-Standard (meistens iso) darstellen, verständlich.
    Naja freut mich für dich, dass es nur sowas triviales war. Mit dem Thema kann man sich grün und blau ärgern ....

    Gruß,
    matze
  • Hi Leute,

    ich möchte das Thema nochmal aufgreifen und zwar habe ich ein Problem mit Umlauten in URLs und zwar in den GET-Parametern.
    Ich lade nämlich über den WebView ein PHP-script auf meinem Server, das die GET-Parameter verarbeitet. Mein Problem ist aber das der WebView beim Laden der URL die Umlaute in den Übergabewerten konvertiert werden und somit dann der Text, falsch auf dem Server gespeichert wird.

    Kann mir irgendjemand vielleicht weiterhelfen?

    Viele Grüße
    Tom