Android:htmlをロードし、幅が広く、ソリューションに適しています.
Android:htmlをロードし、幅が広く、ソリューションに適しています.
まず変更するにはhtmlを変更しなければならないので、私たちは直接コードにhtmlを挿入して、彼が自動的に携帯電話の画面の幅を設定します.
そしてWebViewを設定すればいいです
ただこのような設定を薄めるだけでhtmlの大部分を解決することができて、幅が広すぎてスライドバーの問題が現れて、しかし今日1つの情況に出会って、私に伝わるhtmlコードはtable表で、htmlは直接table表の幅を書いて死んで、このように設定しても適応できなくて、そのためjsを使って対応するtableラベルを手に入れて、手動で幅を修正する必要があります親レイアウトの幅に合わせて、幅を100%に変更します.完全なコードは次のとおりです.
まず変更するにはhtmlを変更しなければならないので、私たちは直接コードにhtmlを挿入して、彼が自動的に携帯電話の画面の幅を設定します.
String css = "";
String html = "" +
""+
css+""+
""+html+"";
そしてWebViewを設定すればいいです
wvContent.loadDataWithBaseURL(null,html, "text/html","utf-8",null);
//
WebSettings webSettings = wvContent.getSettings();
webSettings.setJavaScriptEnabled(true);// js
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);
ただこのような設定を薄めるだけでhtmlの大部分を解決することができて、幅が広すぎてスライドバーの問題が現れて、しかし今日1つの情況に出会って、私に伝わるhtmlコードはtable表で、htmlは直接table表の幅を書いて死んで、このように設定しても適応できなくて、そのためjsを使って対応するtableラベルを手に入れて、手動で幅を修正する必要があります親レイアウトの幅に合わせて、幅を100%に変更します.完全なコードは次のとおりです.
String css = "";
// html table width js
String js = "
" +
"var tables = document.getElementsByTagName('table');
" +
" for(var i=0;i<tables.length;i++)
" +
" {
" +
" tables[i].style.width = 100+\"%\";
" +
" }
" +
" ";
String html = "" +
""+
css+""+
""+html+""+js+"";
wvContent.loadDataWithBaseURL(null,html, "text/html","utf-8",null);
//
WebSettings webSettings = wvContent.getSettings();
webSettings.setJavaScriptEnabled(true);// js
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);