1

当我遇到 Webview 的 NullPointerException 时可能出现的错误:

WebView webView;
webView = (WebView) findViewById(R.id.webView3);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("...");

这是我的 webview3.xml:

<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webView3"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
/>

NPE上线webView.getSettings().setJavaScriptEnabled(true);

4

3 回答 3

3

可能缺少加载 xml 布局 webview3.xml 即。设置内容视图(R.layout.webview3.xml);

于 2013-03-18T12:16:16.173 回答
3

试试这个示例代码,

资源/布局/webview3.xml

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

      <WebView
              android:id="@+id/webview" 
              android:layout_width="fill_parent" 
              android:layout_height="fill_parent"/>

</LinearLayout> 

在AndroidManifest.xml文件中设置权限

<uses-permission android:name="android.permission.INTERNET" />

onCreate()并在您的方法中使用此代码。

setContentView(R.layout.webview3.xml);
WebView mywebview = (WebView) findViewById(R.id.webview);
mywebview.loadUrl("http://Enter your URL here");
WebSettings webSettings = mywebview.getSettings();
webSettings.setJavaScriptEnabled(true);
于 2013-03-18T12:32:35.770 回答
0

另一种方式:

    View webViewLayout = ((LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE))
            .inflate(R.layout.web_main, null, false);
    WebView webView = (WebView) webViewLayout.findViewById(R.id.webview);
于 2013-06-28T21:55:36.867 回答