2012-01-29 84 views
24

簡單的問題。適合webview內的網頁內容(Android)

我試圖拉伸webview的內容,以便整個網頁內可見。即不滾動。我瀏覽過文檔,但無法從縮放控件和setinitialscale中找到任何方法。

在這種情況下setinitialscale的問題在於它對不同的站點工作方式不同。

例如: 1:維基百科將按照預期的方式加載縮放比例。 2:但Google只會顯示頁面的中心。

繼承人的代碼段我有

test1 = (WebView) findViewById(R.id.webview_test_1); 
    test2 = (WebView) findViewById(R.id.webview_test_2); 
    test3 = (WebView) findViewById(R.id.webview_test_3); 

    test1.getSettings().setJavaScriptEnabled(true); 
    test2.getSettings().setJavaScriptEnabled(true); 
    test3.getSettings().setJavaScriptEnabled(true); 

    test1.setInitialScale(12); 
    test2.setInitialScale(12); 
    test3.setInitialScale(12); 

    test1.loadUrl("http://developer.android.com/resources/tutorials/views/hello-tablelayout.html"); 
    test2.loadUrl("http://www.wikipedia.org/"); 
    test3.loadUrl("http://www.google.com"); 

test1.getSettings().setDefaultZoom(ZoomDensity.FAR); 

這似乎是我想要做一個選擇,但我不能讓它遠遠不夠放大。

+0

你現在能夠適應webview的頁面 – Ravi 2013-01-28 05:47:38

回答

95

所以人們可以在將來使用它作爲教程。

有很多方法可以處理android和裝配頁面中的縮放。有時候它可能會很有氣質,有些方法比其他方法更好。

對於大多數人來說,只要使用此:

WebView x; 

x.setInitialScale(1); 

這是furtheset變焦可能。但對於一些網站,它看起來很醜。

這是第二個版本,我發現

test1.getSettings().setDefaultZoom(ZoomDensity.FAR); 

那是一個很好的多面手比似乎只是縮小遠遠不夠了很多,但仍然不是我所期待的。

現在繼承人我最終的解決方案。

x.getSettings().setLoadWithOverviewMode(true); 
x.getSettings().setUseWideViewPort(true); 

基本上這些做什麼在這樣的另一個問題是回答。

setLoadWithOverviewMode(true) 

加載的WebView完全縮小

setUseWideViewPort(true) 

使得web視圖有一個正常的視口(如一個正常的桌面瀏覽器),而當假的WebView將有一個視受限於它自己的尺寸(所以如果網頁流量是50像素* 50像素的視口將是相同的大小)

+0

如果任何人可以更好地說出這個話,那麼我會接受它作爲正確的。我反對標記自己的答案,但我會給其他人 – OVERTONE 2012-01-30 19:58:00

+2

爲我工作的機會。謝謝! – iRunner 2013-02-06 14:25:40

+0

+1對這個網站到目前爲止發現的這些設置的最佳解釋 – 2013-04-18 14:18:03

10

我已經嘗試了所有方法之上,但在我的情況沒有什麼工作,直到我發現:

<meta name="viewport" content="user-scalable=no"/> 

刪除html文件中的這一行,或者乾脆更改user-scalable = yes,一切都會好的。 花了將近一天的時間來找出這條瘋狂的路線。

+0

我可以在哪裏更改或添加? – 2015-07-08 21:33:49

+0

它是HTML文件中的元標記。 您可以打開該html文件,並直接在標題部分進行編輯。 – 2015-07-09 02:15:09

+0

真棒的答案。救了我。 ; - * – Sarasranglt 2015-09-02 09:20:03