android设置webview的适配比例,setInitialScale 方法神奇的功能

android webview setInitialScale 方法神奇的功能.

 web.setInitialScale(25);//为25%,最小缩放等级  
       解释:  里面的数字代表缩放等级
             web.setInitialScale(100);  代表不缩放。
                      什么是不缩放?     比如你要加载的网页中有图片的宽度是 500px ,如果你的手机分辨率(屏幕宽度) 是1000的话,那么整个图片只占一半的屏幕。  其他的字体都是按照标准展示
                      如果这个时候如果你设置 web.setInitialScale(200) ,代表放大一倍,真个网页都会放大一倍,这个时候图片正好展示整个屏幕宽度,另外网页的字体也会放大一倍
                     如果这个时候如果你设置 web.setInitialScale(50) ,代表缩小一倍,这个时候图片正好展示只占屏幕的四分之一,另外网页的字体也会同时变小
       


设置缩放有什么用?
   功能非常大:
          比如你有一个网页里面有300宽度的图片,你想在不同分辨率手机上面进行展示,那么为了得到最优的展示效果,你需要根据不同手机的宽度来设置缩放比例

比如:5.5寸手机,屏幕宽度 720 ,你可以设置 web.setInitialScale(190);  图片展示效果最好
            5寸手机     屏幕 540 ,你可以设置 web.setInitialScale(160);  图片展示效果最好
          .....

下面是设置的具体代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/**
        * 这里需要根据不同的分辨率设置不同的比例,比如
        * 5寸手机设置190  屏幕宽度 > 650   180
        * 4.5寸手机设置170  屏幕宽度>  500 小于 650  160
        * 4寸手机设置150  屏幕宽度>  450 小于 550  150
        * 3           屏幕宽度>  300 小于 450  120
        * 小于    300  100
        *  320×480  480×800 540×960 720×1280 
        */
       WindowManager wm = (WindowManager) AbstractDetailActivity. this .getSystemService(Context.WINDOW_SERVICE);
      int  width = wm.getDefaultDisplay().getWidth();
      if (width >  650 )
      {
       this .webView.setInitialScale( 190 );
      } else  if (width >  520 )
      {
       this .webView.setInitialScale( 160 );
      } else  if (width >  450 )
      {
       this .webView.setInitialScale( 140 );
      } else  if (width >  300 )
      {
       this .webView.setInitialScale( 120 );
      } else
      {
       this .webView.setInitialScale( 100 );
      }

良心的公众号,更多精品文章,不要忘记关注哈

《Android和Java技术栈》


猜你喜欢

转载自blog.csdn.net/huohu1007/article/details/51423570