这是我用于菜单项选择的代码:
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_settings:
showDialog(1);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
菜单中只有一个选项,我使用以下代码设计了一个customDialog:
protected Dialog onCreateDialog(int id) {
Context mContext = getApplicationContext();
Dialog dialog = new Dialog(mContext);
dialog.setContentView(R.layout.custom_dialog);
dialog.setTitle("About Us");
TextView text = (TextView) dialog.findViewById(R.id.text);
text.setText("App Created By: Prateek Garg (garg.prateek1@gmail.com)");
ImageView image = (ImageView) dialog.findViewById(R.id.image);
image.setImageResource(R.drawable.logo_resumes);
return dialog;
}
}
问题是,每当我按下菜单项"关于我们"时,应用程序强制关闭。我无法纠正任何错误,但我希望你们能。
提前谢谢。PS。我已经在onCreateOptionsMenu()中创建了菜单充气器()。
干杯
LOGCAT显示以下错误:[我不知道如何理解或删除它们…:(]
07-27 23:35:04.569:W/dalvikvm(648):线程ID=1:线程退出,出现未捕获的异常(组=0x40a13300)
07-27 23:35:04.659:E/AndroidRuntime(648):致命异常:主
07-27 23:35:04.659:E/AndroidRuntime(648):android.view.WindowManager$BadTokenException:无法添加窗口--令牌null不适用于应用程序
07-27 23:35:04.659:E/AndroidRuntime(648):在android.view.ViewRootImpl.setView(ViewRootImpl.java:589)
07-27 23:35:04.659:E/AndroidRuntime(648):在android.view.WindowManagerImpl.addView(WindowManagerImpl.java:326)还有更多。
如果你们这么说的话,我也会包括其余的错误,但我认为它们只是因为前1或2而形成的,通常情况下
强制关闭很可能是空指针异常。实际上有几种方式可以实现这种情况,但最有可能的是其中一个UI元素不可用。这可能是因为它不在您为视图/对话框指定的布局中,或者因为您未能为视图调用setContentView(R.layout.layoutName)。另一种可能是像TextView这样不指定高度和宽度值的项。在大多数UI元素上,这是必需的,并且会导致运行时错误。要查看logcat转到窗口->显示视图-->logcat
运行时错误将显示为红色。如果关闭应用程序,通常会包含"致命"字样。所以,在日志中找到这一点。查找第一行,您可以看到类似com.mypackage.test.MyActivity或MyDialog的内容。这一行将是红色的。请确保这一行上有您的包名称,因为错误也会指向许多系统内容。点击那一行,它会把你带到代码中发生崩溃的地方。同时发布错误。您应该始终在StackOverflow上发布错误消息。