是否有通用的方法来确定当前是否显示对话框?当然,我可以跟踪所有createDialog
和dismissDialog
次调用,但这很麻烦。
感谢
答案 0 :(得分:0)
我使用这种方法:
protected void showDialogSafe(int id) {
if (!isFinishing()) {
showDialog(id);
}
}
我从这里抓过:http://daniel-codes.blogspot.com/2009/12/activities-and-dialogs.html
当解雇它们时,我只是捕获了IllegalArgumentException。
当你有多个线程运行时,Falmarri跟踪对话似乎说起来容易做起来难。我认为我的代码很完美,但是当我的应用程序尝试关闭未显示的对话框或尝试在活动结束时显示对话框时,我收到了一堆崩溃报告。