无法缩放以在Android Studio中的webView中工作

时间:2019-03-14 01:49:51

标签: android webview zooming

我正在尝试使缩放在我的Android Studio应用程序的webView中正常工作。当我尝试缩放时,它只会向屏幕边界扩展一点。但是,如果我直接在Chrome浏览器中处理网页,则可以使用缩放功能。下面是我的代码。

    webView.setInitialScale(270);
    webView.setPadding(0, 0, 0, 0);
    webView.getSettings().setSupportZoom(true);
    webView.getSettings().setBuiltInZoomControls(true);
    webView.getSettings().setDisplayZoomControls(false);
    webView.getSettings().setUseWideViewPort(true);
     Bundle extras = getIntent().getExtras();
    url = extras.getString("url");

     webView.setWebViewClient(new WebViewClient() {
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    });

这是我的布局。

    <WebView
    android:layout_width="fill_parent"
    android:layout_height="495sp"
    android:id="@+id/web_view"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"></WebView>

它在Chrome浏览器中有效但在我的应用程序中无效,这一事实使我感到困惑。我将initialscale值更改为100,视图看起来很小,但是确实允许我将其缩放到屏幕宽度的极限。但是,如果我将initialscale值设置为270,它将使webView以我想要的方式填充屏幕边界。它只是不会让我像在Chrome中那样超出屏幕的物理范围。任何人都对如何缩放超出屏幕范围有什么建议?

1 个答案:

答案 0 :(得分:0)

尝试添加此属性

/*--WebView--*/
  @SuppressLint("SetJavaScriptEnabled")
   private void callWebView(String url) {

     webView.getSettings().setJavaScriptEnabled(true);
     webView.getSettings().setScrollBarStyle(View.VISIBLE);
     webView.getSettings().setBuiltInZoomControls(true);
     webView.getSettings().setSupportZoom(true);
     webView.getSettings().setLoadWithOverviewMode(true);
     webView.getSettings().setUseWideViewPort(true);
     webView.getSettings().setAllowContentAccess(true);
     webView.setWebViewClient(new WebViewClient());          
     webView.setScrollBarStyle(WebView.SCROLLBARS_INSIDE_OVERLAY);     
     webView.setScrollbarFadingEnabled(false);
     webView.setScrollBarSize(20);
     webView.loadUrl(url);

  }