当我尝试使用Web视图时,它会给我一个空指针异常,我的代码:
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
public class Main extends Activity {
WebView webView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
webView = (WebView)findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebChromeClient(new WebChromeClient());
webView.loadUrl("file:///android_asset/www/index.html");
}
}
日志是:
02-18 22:08:06.224:ERROR / AndroidRuntime(355):java.lang.RuntimeException:无法启动活动ComponentInfo {com.test.web / com.test.web.Main}:java.lang。空指针异常 02-18 22:08:06.224:ERROR / AndroidRuntime(355):引起:java.lang.NullPointerException 02-18 22:08:06.224:ERROR / AndroidRuntime(355):at com.test.web.Main.onCreate(Main.java:17)
(那里有更多的日志,但没有一个与问题有关)
在半相关的说明中,如何使代码看起来像stackexchange上的代码?
所以我猜猜webView没有正确初始化?
答案 0 :(得分:1)
您正在获取NullPointerException,因为在您的main.xml文件中,您已经定义了TextView而不是WebView。
只需将TextView更改为WebView
即可 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="schemas.android.com/apk/res/android"; android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" >
<WebView android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/webView" />
</LinearLayout>