如何检查活动是否有效?

时间:2015-03-17 10:23:55

标签: android alertdialog

我在活动中使用AlertDialog。但是当我在显示对话框之前关闭活动时,应用程序崩溃,因为AlertDialog的上下文不存在。因此,我希望仅在活动处于活动状态时才显示对话框。所以我的问题是如何检查活动是否有效。提前谢谢。

2 个答案:

答案 0 :(得分:7)

在显示对话框之前检查isFinishing标志。如果活动结束,则返回true,否则返回

if (!isFinishing()) {
  // show dialog
}

答案 1 :(得分:2)

利用isFinishing()isDestroyed()

api level 1支持

isFinishing()

api level 17支持

isDestroyed()

在显示对话框之前使用它