在webview android中放大/缩小

时间:2013-01-24 09:29:48

标签: android webview

您好我使用以下代码进行内置放大缩小控制

   mWebView = (WebView) findViewById(R.id.webView1);
    mWebView.getSettings().setBuiltInZoomControls(true);
    mWebView.getSettings().setSupportZoom(true);

我也使用过如下代码

    mWebView.setWebViewClient(new MyWebViewClient());
        mWebView.loadUrl(sabNZBurl);
        mWebView.getSettings().setDomStorageEnabled(true);
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.getSettings().setBuiltInZoomControls(true);
        mWebView.getSettings().setSupportZoom(true);
        backwardBtn = (Button) findViewById(R.id.btnBackWard);
        cancelBtn = (Button) findViewById(R.id.btnCancel);
        refreshBtn = (Button) findViewById(R.id.btnRefresh);
        forwardBtn = (Button) findViewById(R.id.btnForward);

        backwardBtn.setOnClickListener(this);
        cancelBtn.setOnClickListener(this);
        refreshBtn.setOnClickListener(this);
        forwardBtn.setOnClickListener(this);

   final class MyWebViewClient extends WebViewClient {
    @Override
    // Show in WebView instead of Browser
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }

    @Override
    public void onLoadResource(WebView view, String url) {
        super.onLoadResource(view, url);

    }

    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
        PD.dismiss();
        view.getSettings().setBuiltInZoomControls(true);
        view.getSettings().setSupportZoom(true);
    }

}

但是webview还没有内置放大缩小控制可以让任何人帮我解决这个问题

4 个答案:

答案 0 :(得分:3)

您是否在网页中显示了一个视口元标记?如果是,如果它包含user-scalable="no",那么这是正常的,HTML本身会禁用缩放。只需编辑标签,如下所示:

<meta name="viewport" content="initial-scale=1.0, user-scalable=yes, width=device-width" />

答案 1 :(得分:3)

试试这个,我得到了答案

WebSettings webSetting = mWebView.getSettings();
            webSetting.setBuiltInZoomControls(true);

答案 2 :(得分:2)

可能这就是你正在寻找的东西..

settings.setBuiltInZoomControls(true);
settings.setSupportZoom(true);
settings.setUseWideViewPort(true);
settings.setJavaScriptEnabled(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);

答案 3 :(得分:1)

试试这个: -

webview.getSettings().setUseWideViewPort(true);