Android 如何关闭任何正在运行的对话框,而不知道哪个是对话框?
我在找这样的东西Android 如何关闭任何正在运行的对话框,而不知道哪个是对话框?,android,Android,我在找这样的东西 Activity currentActivity = ((MyApp)context.getApplicationContext()).getCurrentActivity(); …但对于对话 类似于getCurrentView()的东西,它返回在前面运行的当前视图,然后我可以从外部关闭它们 我没有对话框的实例可以调用Disclose 我能和他一起控制任何一扇窗户吗 我创建的对话框如下所示: final AlertDialog.Builder dialogBuilder =
Activity currentActivity =
((MyApp)context.getApplicationContext()).getCurrentActivity();
…但对于对话
类似于getCurrentView()
的东西,它返回在前面运行的当前视图,然后我可以从外部关闭它们
我没有对话框的实例可以调用Disclose
我能和他一起控制任何一扇窗户吗
我创建的对话框如下所示:
final AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(mContext).setView(dialogView)
.setTitle(mPolicyInterface.getTitle()).setMessage(mPInterface.getSubTitle());
有三种方法可以做到这一点
你可能应该将当前对话框的单音存储在使用DialogFragment、生成器或其他东西的地方?我不使用DialogFragment,我使用builder@NikosHidalgo你能添加一些相关代码吗?@NikosHidalgo我添加了一个我创建的对话框示例,顺便说一句,这对我没有帮助,我有很多对话框s、 我不能用fragment dialog全部替换它们,也不能为它们中的每一个创建一个单例,并且我的应用程序不会单击您订购的back press,因为我试图在某些情况下强制应用程序转到主窗口,但如果有打开的对话框,则此对话框不会关闭。
@Override
public boolean onKey(DialogInterface arg0, int keyCode,
KeyEvent event) {
// TODO Auto-generated method stub
//Back Key for edit shift amount fix
if (keyCode == KeyEvent.KEYCODE_DEL) {
return false;
}
if (keyCode == KeyEvent.KEYCODE_BACK) {
dialog.dismiss();
}
return true;
}
});