Android WebView中的可伸缩性问题

时间:2011-12-10 06:38:19

标签: android webview

我在Android WebView中面临可伸缩性问题。我的代码是正确的,我甚至得到了正确的输出。问题是输出不适合设备/仿真器窗口。它是放大的。

以下是我的代码:

        public class WebViewSampleActivity extends Activity {
        WebView wb;
        private class HelloWebViewClient extends WebViewClient {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
      }
      /** Called when the activity is first created. */
      @Override
       public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        wb=(WebView)findViewById(R.id.webView1);
        wb.getSettings().setJavaScriptEnabled(true);
        wb.getSettings().setPluginState(WebSettings.PluginState.ON);
        wb.getSettings().setPluginsEnabled(true);
        wb.loadUrl("http://www.worlditlab.com");
        wb.setWebViewClient(new HelloWebViewClient());
    }
}

以下是我的main.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" 
    android:layout_gravity="center">

    <WebView
        android:id="@+id/webView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center" />

</LinearLayout>

我已经尝试过fill_parent和wrap_content的所有组合,希望会发生一些事情,但每次都会得到相同的输出。任何人都可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

  • 添加wb.getSettings()setLoadWithOverviewMode(true)
  • 将你所有的android:layout_xx设置为fill_parent
  • 我会在loadUrl()调用之前设置WebViewClient
  • 除非您的应用必须在网址上执行某些操作,否则您无需在shouldOverrideUrlLoading()中自行调用view.loadUrl(url)。简单地返回false。