V
viper1209
Neues Mitglied
- 0
Hallo,
ich hab Probleme mit der WebView und zwar versuche ich seit 2 Wochen verzweifelt eine WebView in ein Canvas einzubinden.
Ausgangslage:
was mir die folgende LogCat-Ausgabe erzeugt
(die beiden Layout-Dateien enthalten jeweils ausschließlich eine TextView bzw. eine WebView mit match-parent in alle Richtungen)
Wenn ich im Falle der WebView "setContentView(v)" anfüge, wird die WebView korrekt dargestellt, aber halt leider bildschirmfüllend, am Inhalt liegt es also nicht.
Hat Jemand eine Ahnung wo der Fehler liegt? Und Warum funktioniert es mit der TextView, aber nicht mit der WebView?
Danke im Vorraus.
ich hab Probleme mit der WebView und zwar versuche ich seit 2 Wochen verzweifelt eine WebView in ein Canvas einzubinden.
Ausgangslage:
- App die komplett mit Canvas gezeichnet wurde
- Web-Inhalt (Inhalt des <body>) liegt als HTML-String vor (ist lokal, nichts aus dem Internet)
Code:
String htmlPreafix = ""<html><head></head><body>",
htmlsufix = "</body></html>";
String htmlContent = htmlPreafix + htmlBody + htmlsufix;
LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout v = (LinearLayout) li.inflate(R.layout.web_layout, null);
WebView wv = (WebView) v.findViewById(R.id.webView);
wv.loadData(htmlContent, "text/html", "UTF-8");
v.measure(MeasureSpec.getSize(v.getMeasuredWidth()),MeasureSpec.getSize(v.getMeasuredHeight()));
v.layout(400, 400, 400, 400);
canvas.translate(100, 100);
v.draw(canvas);
//setContentView(v);//<-funktioniert, ist aber nicht was ich brauche
komischerweise funktioniert das selbe Prinzip mit einer TextView. Das hier läuft super:06-17 14:04:06.210: D/webview(19424): [InitTabEffectPivot] >> nScreenWidth = 720
06-17 14:04:06.210: D/webview(19424): [InitTabEffectPivot] >> nScreenHeight = 1280
06-17 14:04:06.220: D/skia(19424): notifyPluginsOnFrameLoad not postponed
Code:
LayoutInflater li=(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout v =(LinearLayout) li.inflate(R.layout.layout_test, null);
TextView textView = (TextView) v.findViewById(R.id.textView1);
textView.setText("Hallo Welt");
v.measure(MeasureSpec.getSize(v.getMeasuredWidth()),MeasureSpec.getSize(v.getMeasuredHeight()));
v.layout(400, 400, 400, 400);
canvas.translate(100, 100);
v.draw(canvas);
Wenn ich im Falle der WebView "setContentView(v)" anfüge, wird die WebView korrekt dargestellt, aber halt leider bildschirmfüllend, am Inhalt liegt es also nicht.
Hat Jemand eine Ahnung wo der Fehler liegt? Und Warum funktioniert es mit der TextView, aber nicht mit der WebView?
Danke im Vorraus.