Android Webview初始缩小

时间:2012-11-24 16:40:18

标签: java android webview zoom

我在我的Android应用程序中使用webview,在应用程序启动的那一刻,网站被放大了很多,我希望它被缩小以适应屏幕的宽度。我目前在我的活动中有这个:

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");

6 个答案:

答案 0 :(得分:39)

webview.getSettings().setLoadWithOverviewMode(true);    

这将导致最初缩小webview。

webview.getSettings().setUseWideViewPort(true);

Webview将具有普通视口(如桌面浏览器),如果为false,则webview将具有受其自身尺寸约束的视口。

编辑:随着Android KitKat中“Chrome网络视图”的推出,此代码可能无效。

答案 1 :(得分:15)

这会缩小,以便内容(在我的情况下为SVG)适合屏幕,但不会占用不必要的空间。

webView.getSettings().setUseWideViewPort(true);
webView.setInitialScale(1);

答案 2 :(得分:8)

试试这个:

    webView.setInitialScale(50);
    webPlanSettings.setDefaultZoom(WebSettings.ZoomDensity.FAR);
    webPlanSettings.setUseWideViewPort(true);

答案 3 :(得分:4)

    //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);

答案 4 :(得分:2)

使用webSettings类设置缩放级别......

webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);

答案 5 :(得分:1)

对于Kit Kat及更高版本的设备,您需要在WebView加载的HTML页面的标题中设置视口元标记,以防止默认的放大行为。

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