2013-05-06 94 views
2

我试图收缩我的webview的宽度内容,以适应我的屏幕,所以我不必滚动侧的方式了...我试了这么多的代码,但它仍然没有任何人有任何想法如何?收缩Webview的内容宽度,以适应屏幕

继承人我的代码到目前为止。

postView = (WebView) findViewById(R.id.postView); 
    postView.setScrollBarStyle(WebView.OVER_SCROLL_NEVER); 
    postView.setInitialScale((int) .8); 
    WebSettings settings = postView.getSettings(); 
    settings.setLoadWithOverviewMode(true); 
    settings.setUseWideViewPort(true); 
    settings.setDomStorageEnabled(true); 
    settings.setJavaScriptEnabled(true); 
    settings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); 
+0

我觉得你要setInitialScale()调用没有做你的期望。这应该是一个整数,如80得到80%的缩放比例。看到http://developer.android.com/reference/android/webkit/WebView.html#setInitialScale%28int%29 – Alan 2013-07-02 01:07:19

回答

4

那么你可以用screenwidth自己定义webview的宽度并将其添加到它的参数部分。

int screenWidth = getWindowManager() 
       .getDefaultDisplay().getWidth(); 
postView.setLayoutParams(new TableRow.LayoutParams(
        screenWidth/2, LayoutParams.MATCH_PARENT, 1f)); 
/*I have assumed your webview's parent is tablerow. You must define layout params with respect to its parent. like if postview parentview is linearlayout then new LinearLayout.LayoutParams() must be used*/ 

这必须解决您的问题。

希望,这有助于。

编辑

好了,现在我明白你的问题。但我认为在你的情况下,你应该允许用户放大/缩小,以便用户能够控制他想查看的数据。

添加这种说法

postView.getSettings().setBuiltInZoomControls(true); 
+0

你的代码基本上缩小了我的Webview而不是缩小Webview的内容,我的webview内的内容仍然溢出了webview =(.. – zBaoAnhLe 2013-05-06 07:06:01

+0

等待..有点工作!谢谢!lols:D !! +1 ... – zBaoAnhLe 2013-05-06 07:30:50

+0

lols我wud +1你的答案兄弟...但我需要15 repution ...> _> ..我只有11 :(:) – zBaoAnhLe 2013-05-06 13:49:40

相关问题