AlertDialog失败…有时
|
我有一个ListActivity,其中包含包含一些文本和一个按钮的项目。当按下按钮时,我可能需要显示一个AlertDialog来询问用户是否确定要执行该操作。因此,这是活动的onCreateDialog:
@Override
protected Dialog onCreateDialog(int id)
{
switch (id)
{
case CONFIRM_DELETE_DLG:
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(getString(R.string.remove_confirmation))
.setCancelable(false)
.setPositiveButton(R.string.caption_yes, this)
.setNegativeButton(R.string.caption_no, this);
return builder.create();
}
default:
break;
}
return null;
}
(只有一种类型的对话框,因此此功能有些过分,但是可以使用。)
当按下对话框中的按钮时,将调用我的onClick(DialogInterface dialog,int which)函数。它执行处理删除操作所需的操作,然后调用dismissDialog(CONFIRM_DELETE_DLG)。
最后,在我的Activity \的onDestroy()中,我在try / catch块中调用removeDialog(CONFIRM_DELETE_DLG),它使我可以忽略从未创建对话框的情况。
问题:
通常,我第一次调用该对话框时,它会起作用。大约每隔我输入此ListActivity并调用此对话框,就会在builder.create()调用中获得以下内容:
Attempted to add application window with unknown token
我在网上看到的唯一讨论与传递给AlertDialog.Builder()的上下文有关。我见过的每个假定的工作示例都使用Activity的\“ this \”成员作为参数,而这正是我正在使用的。
没有找到相关结果
已邀请:
0 个回复