这个错误显示在alert.show()代码行中。在点击对话界面,启动这样的新活动 startActivity(new Intent(LayoutActivity.this,MainActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
尝试关闭onPause()和onStop()以及onDestroy()中的alert.dismiss()仍然得到相同的错误
答案 0 :(得分:2)
我有同样的错误。我发现的是cancel
中onStop()
警报对话框就足够了。在onStop()
中尝试这种代码安静:
if(dialog != null)
dialog.cancel();
答案 1 :(得分:1)
这是android的典型问题。
解决问题的目标是,在Resume()和onPause()上显示或隐藏活动之间的对话
像这样boolean isShown = false;
public void onResume()
{
isShown = true;
...
}
public void onPause()
{
isShown = false;
...
}
public void showDialog()
{
if(isShown)
{
...
}
}
答案 2 :(得分:0)
为什么addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)会关闭之前打开的所有Acitivties。 如果您假设活动的主题是一个对话框,只需将其用作活动。如果有AlertDialog对象,则调用alert.dismiss()。
答案 3 :(得分:0)
您应该看到此对话框的活动未激活,或者您可以在清单中将当前活动的属性 noHistory 设置为 true