gpt4 book ai didi

android - 以编程方式关闭系统对话框

转载 作者:行者123 更新时间:2023-11-29 14:13:24 26 4
gpt4 key购买 nike

我有一个输入一些 IMM 代码的应用程序,在输入代码后,系统弹出对话框以通知发生了什么(这很重要)。如何以编程方式关闭系统对话框? enter image description here

下面是我的代码:

public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);

Log.e("Focus debug", "Focus changed !");

if (!hasFocus) {
Log.e("Focus debug", "Lost focus !");
Intent closeDialog = new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
sendBroadcast(closeDialog);
}
}

而这段代码:(不工作)

sendBroadcast(new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));

和这段代码(类似):(不工作)

Intent closeDialog = new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
sendBroadcast(closeDialog);

毕竟这个系统对话框仍然弹出并等待用户手动关闭它

我该怎么做才能正常工作并关闭系统对话框?

最佳答案

如果你可以持有一个具有全局Dialog实例的对话框实例,你可以根据需要手动关闭它。

如果该对话框出现在您的代码中,请尝试如下操作:

private Dialog mDialog;

public void whereDialogPopsup()
{
AlertDialog.Buildder builder = new AlertDialog.Builder();
...
mDialog = builder.show();
}

public void closeDialog()
{
if(mDialog != null)
{
mDialog.dismiss();
// remove it if you don't need any more
mDialog = null;
}
}

关于android - 以编程方式关闭系统对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39222074/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com