在 Android webview 中,我有一个 js 在边距的右侧(在 webview 上)添加了一个 div,现在当我添加带有背景颜色的 div 时,它工作正常。
当想要在 div 上添加背景图像时,这似乎不起作用。
这是我渲染 div 的 js
var div = document.createElement('div');
div.style.width = "20px";
div.style.height = "20px";
div.style.position = "absolute";
div.style.top = yPos + "px";
div.style.right = "5px";
div.style.backgroundColor = col;
div.style.backgroundImage = "url(file:///android_asset/images/ic_menu_notes_pressed.png)";
document.body.appendChild(div);
背景颜色加载正常,但没有显示图像。
我的图像位于/assets/images/ic_menu_notes_pressed.png
更新,使用如下方案() base64
js文件
var img = document.createElement('img');
img.style.width = "50px";
img.alt = "Hello";
img.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAABbUlEQVRoQ+1YvUoDQRD+ZoNioSD25tw0Qiz0AXwQQWw0QdRK0FIQQXvRRgSfxgfQ0spKC9s0FrmMwx1JsNC97LrmFibNQW527/u7mbsjJP6jxPFDCUzbQXVAHQhUQCMUKGDwcnUgWMLADaI4wIdr88h7TQwoc+LL5x7p4aXnrPuh4M8JcHdlCzBLIG6D+cgJzNAG3b0+O+v+gwB3s22A7gX8mZCwyRBgQY2O3RHg1yLUohxPkiHA5zB4z47BdCXgZwunkyLQsacC+FJgz4ximgKBQvk3uwfwzTfwBQsWUqZV63ugjM6yBRpj5YcW5P0P+fui3gQOmi30ze0v7a8t59xzYFptlPftOgb85Nu/R+uUgKeE6sBQOI2QRshTAY1QqYD3+4B2IY2QRkifhcoM6CT2nEPpt9Hd1QU0Pjc9+Y+X1e3DVjChCTfwnsQTXidauRKIJm3FjdWBikJFK1MHoklbcWN1oKJQ0cqSd+ALnjXMMUm0ItgAAAAASUVORK5CYII=";
document.body.appendChild(img);
最佳答案
将您的图像 (ic_menu_notes_pressed.png) 放在 Assets 文件夹中,并像这样在 Web View 中加载 url
webView.loadDataWithBaseURL("file:///android_asset/", html_string, "text/html", "utf-8", null);
现在你可以使用 like
<img src="ic_menu_notes_pressed.png">
或
<div style="backgroundImage =ic_menu_notes_pressed.png";> </div>
关于javascript - 在 webview 中显示 android Assets 图像文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19678516/