我已经尝试了以下方法,以适应基于设备屏幕大小的网页。
mWebview.setInitialScale(30);
然后设置元数据视口
<meta name="viewport" content="width=320, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=0;"/>
<meta name="viewport" content="width=device-width, target-densityDpi=medium-dpi"/>
但是什么都不能用,网页并不固定到设备屏幕的大小。
有人能告诉我怎么弄到这个吗?
发布于 2010-10-13 00:05:34
您必须计算需要手动使用的比例,而不是设置为30。
private int getScale(){
Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
int width = display.getWidth();
Double val = new Double(width)/new Double(PIC_WIDTH);
val = val * 100d;
return val.intValue();
}
然后使用
WebView web = new WebView(this);
web.setPadding(0, 0, 0, 0);
web.setInitialScale(getScale());
发布于 2011-09-20 13:17:24
你可以使用这个
WebView browser = (WebView) findViewById(R.id.webview);
browser.getSettings().setLoadWithOverviewMode(true);
browser.getSettings().setUseWideViewPort(true);
这将根据屏幕大小来确定大小。
发布于 2012-02-29 21:12:58
朋友,
我从你那里发现了很多重要的和很棒的信息。但是,对我来说唯一有效的方法就是这样:
webView = (WebView) findViewById(R.id.noticiasWebView);
webView.setInitialScale(1);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
webView.setScrollbarFadingEnabled(false);
webView.loadUrl("http://www.resource.com.br/");
我之所以在Android 2.1上工作,是因为公司的那种设备。但是我解决了我的问题,使用了来自每一个的那部分信息。
谢谢你!
https://stackoverflow.com/questions/3916330
复制相似问题