25

私はAndroidアプリでWebビューを使用していますが、アプリを起動した時点でWebサイトはかなりズームインされているので、画面の幅に合わせてズームアウトしたいと思います。私は現在私の活動にこれを持っています:

super.onCreate(savedInstanceState);
    setContentView(R.layout.shop);
    WebView webview;
    webview = (WebView) findViewById(R.id.webview);
    webview.setWebViewClient(new WebViewClient());
    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl("http://www.example.com");
4

6 に答える 6

48
webview.getSettings().setLoadWithOverviewMode(true);    

これにより、最初にWebビューがズームアウトされます。

webview.getSettings().setUseWideViewPort(true);

Webviewには通常のビューポート(デスクトップブラウザなど)があり、falseの場合、Webviewには独自のサイズに制限されたビューポートがあります。

編集:Android KitKatに「Chromeウェブビュー」が導入されたため、このコードが機能しない可能性があります。

于 2012-11-24T16:43:41.933 に答える
18

これにより、コンテンツ(私の場合はSVG)が画面に収まるようにズームアウトされますが、不要なスペースは作成されません。

webView.getSettings().setUseWideViewPort(true);
webView.setInitialScale(1);
于 2013-07-24T09:37:56.167 に答える
9

これを試して:

    webView.setInitialScale(50);
    webPlanSettings.setDefaultZoom(WebSettings.ZoomDensity.FAR);
    webPlanSettings.setUseWideViewPort(true);
于 2012-11-24T16:45:00.807 に答える
7
    //This the the enabling of the zoom controls 
    webView.getSettings().setBuiltInZoomControls(true);

    //This will zoom out the WebView
    webView.getSettings().setUseWideViewPort(true);
    webView.getSettings().setLoadWithOverviewMode(true);
    webView.setInitialScale(1);
于 2016-01-24T09:56:12.573 に答える
2

webSettingsクラスを使用してズームレベルを設定します...

webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
于 2012-11-24T16:42:33.167 に答える
2

キットカット以降のデバイスでは、デフォルトのズームイン動作を防ぐために、WebViewによってロードされるHTMLページのヘッダーにビューポートメタタグを設定する必要があります。

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
于 2015-04-20T22:41:18.473 に答える