所以我有这个AsyncTask加载onPostExecute,否则工作完美的WebView,但是我需要做一些onLoadResource,所以我想设置一个WebViewClient,出于某种原因导致空指针异常Android - 设置WebViewClient在AsyncTask中导致NullPointerException
private class newThread extends AsyncTask{ private WebView webview; ... protected void onPostExecute(Void result){ setContentView(R.layout.reply); webview.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url){ return true; } @Override public void onLoadResource(WebView view, String url){ finish(); } }); webview = (WebView)findViewById(R.id.replyview); webview.getSettings().setJavaScriptEnabled(true); webview.setScrollBarStyle(0); webview.loadDataWithBaseURL("http://example.com", "example", "text/html", "utf-8", null); } ...
该代码有什么问题吗?
如果我使用基本相同的方法,但在AsyncTask之外,那么没有错误。如果我删除setWebViewClient线,那么它运行良好。
请发布堆栈跟踪或更清楚地指出NPE的发生位置。 – katsharp 2011-03-26 23:37:44