android - 如何通过代码在 AlertDialog 上单击 'OK'?

标签 android dialog android-alertdialog

我在 Activity 中使用 showDialogdismissDialog 来显示和销毁我的对话框。还有一种方法可以在当前显示的对话框上发出单击命令而不保留引用该对话框的变量吗?

例如,我想通过代码按下对话框的“确定”/肯定按钮。

最佳答案

我还没有测试过这段代码,但它应该可以工作:

AlertDialog dialog = ...
dialog.getButton(DialogInterface.BUTTON_POSITIVE).performClick();

或者,如果您不想保留对对话框的引用但可以控制其设置,则可以将点击代码提取到另一个方法中:

AlertDialog.Builder builder = ...
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
  public void onClick(DialogInterface dialog, int which) {
    onPositiveButtonClicked(); 
  }
});

并在您的 Activity 中实现 onPositiveButtonClicked()。您可以调用 onPositiveButtonClicked()dismissDialog(id),而不是以编程方式单击 OK 按钮。如果您需要处理多个对话框,请让 onPositiveButtonClicked 接受一个 id 参数。

关于android - 如何通过代码在 AlertDialog 上单击 'OK'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16410506/

相关文章:

android - 如何使 Chrome for Android 中的 inline-block 正常工作?

android - (取消)在 Android 服务中注册传感器监听器并不总是有效

java - 使用位图工厂在可运行程序中以每秒 30 个图像的速度显示 150 个图像,但它很滞后

android - 使用 Espresso 进行 UI 测试

user-interface - DLGTableLayOut(2, 1, 0) 和 DLGLayout(DLGCreateTableLayout(2, 1, 0)) 有什么区别

java - AlertDialog 自动关闭

android - 如何使用警报对话框生成器在弹出框中显示 Html 格式的文本?

java - Android 可滚动 AlertDialog 以编程方式

android - Kotlin - Android 中的自定义对话框

c# - 在 Microsoft Bot 框架 V4 中完成子对话框时,如何继续父对话框?