【轉】 Android WebView內容寬度自適應


我們平常在項目中有可能會遇到網頁的內容是通過json數據傳遞到app上面用WebView來顯示的,這時候我們通常都要調整內容的總寬度不超過父容器的寬度,這樣子用戶可以不用左右滑動就可以看到全部的內容.但是當我遇到這個問題的時候,我是想方設法想達到這個目的,用過WebView里面的很多方法,包括:

 

1.第一種網上的方法(ps:失敗)

 

WebSettings settings = webView.getSettings(); 
settings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN); 
LayoutAlgorithm是一個枚舉用來控制頁面的布局,有三個類型:

1.NARROW_COLUMNS:可能的話使所有列的寬度不超過屏幕寬度

2.NORMAL:正常顯示不做任何渲染

3.SINGLE_COLUMN:把所有內容放大webview等寬的一列中

用SINGLE_COLUMN類型可以設置頁面居中顯示,頁面可以放大縮小,但這種方法不怎么好,有時候會讓你的頁面布局走樣而且我測了一下,只能顯示中間那一塊,超出屏幕的部分都不能顯示。

2.第二種(失敗)

//設置加載進來的頁面自適應手機屏幕 
settings.setUseWideViewPort(true); 
settings.setLoadWithOverviewMode(true); 

其他的一些方法我也試過了,但是都沒達到預期的效果

后來我自己想到了可不可以通過css或者js來控制內容的顯示效果,於是使用了css來實現我需要的功能:

3.第三種(成功)

 

body{ word-wrap:break-word; font-family:Arial; }

通過css還可以改變文字的顏色等外觀效果,比如:

 

 

*{
color:#FF0000; }

所以這里寫個簡單的博客給coder,如果其他方法不行的話,可以試試博主這個方法哦

 

原文來自:http://www.voidcn.com/blog/u011692041/article/p-5762019.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM