如何控制 webView 的缩放 [英] How to control zoom in webView
本文介绍了如何控制 webView 的缩放的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这个代码:
[...]
{
webView = (WebView) findViewById(R.id.webView1);
webView.setInitialScale(getScale(Double.parseDouble(pubPages)));
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setSupportZoom(true);
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.setPadding(0, 0, 0, 0);
webView.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress)
{
activity.setTitle("Loading...");
activity.setProgress(progress * 100);
if(progress == 100)
activity.setTitle(R.string.app_name);
}
});
webView.setWebViewClient(new WebViewClient() {
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl)
{
// Handle the error
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
view.loadUrl(url);
return true;
}
});
webView.loadUrl("http://urltoshow");
}
private int getScale(double numPages){
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int screenHeight = dm.heightPixels;
Double val = (new Double(screenHeight-40)/(new Double(1024)));
val = val * 100d;
return val.intValue();
}
它工作正常,但我想禁止将一侧缩放到低于其自然高度.
And it works fine, but I want to disallow zooming the side below its natural height.
放大是,缩小是,但最多一点.
Zoom in yes, zoom out yes but up to a point.
如何做到这一点?
推荐答案
webview.getSettings().setBuiltInZoomControls(true);
这篇关于如何控制 webView 的缩放的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文