<div id="canvas" style="margin-top: 0px;margin-left: 170px;">
<canvas id="canvass" width="1850" height="950" ></canvas>
</div>
<script>
var canvass = document.getElementById("canvass"),
r = 10,
ctx = canvass.getContext("2d"),
img = new Image();
var url = "http://192.135.0.00:8181/"+"photo/DistributionBoxes/pdx1000_955.png";//此处图片一直无法显示
img.src = url ;
img.onload = function() {
ctx.drawImage(img, 0, 0);
}
</script>
解决办法:
<script>
function aa(path){//1.增加js方法调用
var canvass = document.getElementById("canvass"),
r = 10,
ctx = canvass.getContext("2d"),
img = new Image();
img.src = path;
img.onload = function() {
ctx.drawImage(img, 0, 0);
}
}
</script>
webView.setWebChromeClient(new chromClient());//2.在webView增加此方法
private class chromClient extends WebChromeClient {
@Override
public void onProgressChanged(WebView view, int newProgress) {
if(newProgress==100){
String path = "http://192.135.0.00:8181/"+"photo/DistributionBoxes/pdx1000_955.png";
String action="javascript:aa('"+path+"')";//3.在此处重新给调用一下JS
runWebView(action);//4.然后再刷新,就可以显示了
}
super.onProgressChanged(view, newProgress);
}
}
private void runWebView(final String url){
runOnUiThread(new Runnable() {
@Override
public void run() {
webView.loadUrl(url);
}
});
}