您好我想通過自定義提醒框加載一個HTML文件,以利用格式。但是當我啓動對話框時,我的應用程序崩潰。當我剛剛使用html字符串轉換時,我也遇到了問題,我可以使用粗體文本等工作,但無法鼓勵它使用位於root/assets文件夾中的圖像文件。我想知道它是一個代碼錯誤還是我錯誤地引用了我的資產文件夾。我知道這聽起來像兩個問題,但我希望他們有關係?Android:試圖使用HTML IMG或Webview導致我的問題
我已經嘗試過,沒有JS的真實,沒有js在我的HTML文件,它的基本。
WebView mWebView = (WebView) findViewById(R.id.webView);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("file:///android_asset/helppage.html");
錯誤轉儲
03-24 14:20:59.800: W/dalvikvm(5574): threadid=1: thread exiting with uncaught exception (group=0x4001e578)
03-24 14:20:59.800: E/AndroidRuntime(5574): FATAL EXCEPTION: main
03-24 14:20:59.800: E/AndroidRuntime(5574): java.lang.NullPointerException
03-24 14:20:59.800: E/AndroidRuntime(5574): at com.mediabar.timelapse.TimeLapseActivity.createDialog(TimeLapseActivity.java:140)
03-24 14:20:59.800: E/AndroidRuntime(5574): at com.mediabar.timelapse.TimeLapseActivity$3.onClick(TimeLapseActivity.java:66)
03-24 14:20:59.800: E/AndroidRuntime(5574): at android.view.View.performClick(View.java:2538)
03-24 14:20:59.800: E/AndroidRuntime(5574): at android.view.View$PerformClick.run(View.java:9152)
03-24 14:20:59.800: E/AndroidRuntime(5574): at android.os.Handler.handleCallback(Handler.java:587)
03-24 14:20:59.800: E/AndroidRuntime(5574): at android.os.Handler.dispatchMessage(Handler.java:92)
03-24 14:20:59.800: E/AndroidRuntime(5574): at android.os.Looper.loop(Looper.java:130)
03-24 14:20:59.800: E/AndroidRuntime(5574): at android.app.ActivityThread.main(ActivityThread.java:3691)
03-24 14:20:59.800: E/AndroidRuntime(5574): at java.lang.reflect.Method.invokeNative(Native Method)
03-24 14:20:59.800: E/AndroidRuntime(5574): at java.lang.reflect.Method.invoke(Method.java:507)
03-24 14:20:59.800: E/AndroidRuntime(5574): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907)
03-24 14:20:59.800: E/AndroidRuntime(5574): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
03-24 14:20:59.800: E/AndroidRuntime(5574): at dalvik.system.NativeStart.main(Native Method)
編輯:添加活性
public class mainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
overridePendingTransition(R.anim.pull_left_in, R.anim.push_right_out);
setContentView(R.layout.main);
Button help = (Button) findViewById(R.id.help);
help.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
createDialog();
}
});
}
public void createDialog() {
final Dialog dialog = new Dialog(CopyOfTimeLapseActivitybackup.this);
dialog.setContentView(R.layout.help_dialog);
dialog.setTitle("Help Area");
WebView mWebView = (WebView) findViewById(R.id.webView);
mWebView.loadUrl("file:///android_asset/helppage.html");
Button button = (Button) dialog.findViewById(R.id.okButton);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.show();
}
}
哪一行是你的TimeLapseActivity類的第140個? – 2012-03-24 14:36:33
thats mWebView.loadUrl(「file:///android_asset/helppage.html」);並感謝您指出了參考線。我對Java和eclipse非常陌生,現在很難找到錯誤。 – Purplemonkey 2012-03-24 14:37:59
我不明白爲什麼你會在這條線上獲得NPE。如果它是上面的那個,那麼可能是因爲webView沒有正確初始化。然而,這一行似乎很好,是的,你正在正確引用資產文件夾 – 2012-03-24 14:41:55