答案 0 :(得分:4)
如果您要创建HTML代码(您说的是自己),则可以作弊:
在html代码中:
img src="xxx" width="100% >
答案 1 :(得分:3)
这对我有用:
webView.setInitialScale(30);
WebSettings webSettings = webView.getSettings();
webSettings.setUseWideViewPort(true);
答案 2 :(得分:2)
对我有用的是:我读到为了适应屏幕的宽度,你应该将它添加到字段内的HTML或xml中:
width="100%"
所以我做的是,而不是缩放和缩放图像,我得到了xml,把它放在StringBuilder中,找到src =" https://blablabla.com/image.png"这是在场内,就在" src" substring我插入" width =" 100%"",然后用StringBuilder设置我的webView,mi代码是这样的:
public void setWebViewWithImageFit(String content){
// content is the content of the HTML or XML.
String stringToAdd = "width=\"100%\" ";
// Create a StringBuilder to insert string in the middle of content.
StringBuilder sb = new StringBuilder(content);
int i = 0;
int cont = 0;
// Check for the "src" substring, if it exists, take the index where
// it appears and insert the stringToAdd there, then increment a counter
// because the string gets altered and you should sum the length of the inserted substring
while(i != -1){
i = content.indexOf("src", i + 1);
if(i != -1) sb.insert(i + (cont * stringToAdd.length()), stringToAdd );
++cont;
}
// Set the webView with the StringBuilder: sb.toString()
WebView detailWebView = (WebView) findViewById(R.id.web_view);
detailWebView.loadDataWithBaseURL(null, sb.toString(), "text/html", "utf-8", null);
}
希望这会有所帮助,我花了几个小时才弄清楚如何解决这个问题。
答案 3 :(得分:1)
您可以在网页中使用一点jQuery来完成它。
类似的东西:
$(document).ready(function(){
var windowWidth = $(window).width()+"px";
$("#imagID").width(windowWidth);
});
答案 4 :(得分:1)
我找到了一种洗液。
使用此计算。
设备宽度*(152 /密度)
使用displayMetrics.widthPixels和displayMetrics.densityDpi检索设备宽度和密度
在img标签中设置计算为宽度
值152原来是160但是当使用160时,它看起来像Image大于屏幕。
结果是,图像最初适合屏幕,放大效果很好。
答案 5 :(得分:1)
有没有理由不使用某些javascript将图像传入Android应用程序,并在该对话框中显示带有图像的自定义对话框,以便根据内容进行缩放。
就个人而言,我认为这种解决方案对您的方法更为优雅。
答案 6 :(得分:0)