2010-11-25 4 views
1

Ich versuche, eine HTML-Zeichenfolge passieren, wie zur Webansicht folgendenWie den Weg eines ziehbar oder „.gif“, um in android

String data = "<html>" + "<body bgcolor=\"white \" align=\"center \" valign=\"center \">" + "<table width=\"470\" height=\"725 \" >" + "<tr>" + "<td align=\"center\" valign=\"center\">" + "<font color=\"gray\">" + getResources().getString(R.string.loading) + //this is the string i want to localize "</font>" +
"<br/>" + "<br/>" + "<br/>" + "<br/>" + "<br/>" + "<img src=\"" + "loading.gif" + //this the GIF i want to pass "\">" + "</td>" + "</tr>" + "</table>" + "</body>" + "</html>"; webview.loadData(data, "text/html", "UTF-8");

alles funktioniert gut, aber das gif geladen wird nicht immer. Der einzige Grund für die Übergabe von HTML ist die Lokalisierung dieser Zeichenfolge "loading" .Erlier Es war in Assets und die Zeichenfolge "Loading" wurde hart in HTML-Datei codiert. jetzt gebe ich es weiter, indem ich String-Ressourcen bekomme (getResources(). getString (R.string.loading)). Das Problem besteht darin, "GIF" zu übergeben.

Bitte helfen Sie mir, dies zu lösen.

Antwort

1

Eine Lösung für Ihr Problem ist, speichern Sie alle diese HTML-Code in eine Datei und legen Sie diese Datei im Asset-Ordner zusammen mit der Bilddatei (GIF). Dann laden Sie einfach diese HTML-Datei in das WebView. Wenn Sie im HTML-Code Laufzeitwerte hinzufügen möchten, fügen Sie einige Platzhalterzeichenfolgen in Ihr HTML ein und ersetzen Sie sie zur Laufzeit durch String.format(). Auf diese Weise müssen Sie die Methode loadDataWithBaseURL() verwenden, um den Inhalt anzuzeigen.

+0

Vielen Dank und Sorry, ich bin etwas verwirrt über die Verwendung von String.format(), um den Platzhalter in HTML zu ersetzen; – Kantesh

+0

Wie Sie String.format() verwenden, um den Platzhalter in HTML zu ersetzen. Und was wäre der Platzhalter in HTML? – Kantesh

+0

Ich habe es getan .. Ich übergab eine Zeichenfolge mit dem Inhalt von HTML als Daten zu "LoadDataWithBaseURL" und gab die Basis-URL als "file: /// android_asset /". Automatisch sucht es nach GIF in Assets. – Kantesh