【问题标题】:Zoom in/out in webview android在webview android中放大/缩小
【发布时间】:2013-01-24 09:29:48
【问题描述】:

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

   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 仍然没有内置放大缩小控制,任何人都可以帮助我解决这个问题

【问题讨论】:

    标签: android webview


    【解决方案1】:

    您是否在网页中有要显示的视口元标记?如果是并且如果它包含user-scalable="no" 那么这是正常的,HTML 本身禁用缩放。只需像这样编辑标签:

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

    【讨论】:

    • throrin 我不知道,但网页不是来自我的网站 :(
    • 这是移动网页?还是桌面网页?
    • 在 webview 中加载 html 数据时很有用。如果需要,请考虑使用“最大比例”来设置最大比例。
    【解决方案2】:

    试试这个,我有答案

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

    【讨论】:

      【解决方案3】:

      可能这就是您正在搜索的内容..

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

      【讨论】:

        【解决方案4】:

        试试这个:-

        webview.getSettings().setUseWideViewPort(true);
        

        【讨论】:

          猜你喜欢
          • 2013-03-20
          • 2014-05-25
          • 2011-01-04
          • 1970-01-01
          • 1970-01-01
          • 2014-02-13
          • 2013-05-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多