gpt4 book ai didi

android - 如何防止在 Android 中单击肯定按钮时自动关闭 Appcompact AlertDialog?

转载 作者:太空狗 更新时间:2023-10-29 14:00:44 24 4
gpt4 key购买 nike

如何在 appcompact7 alertdialog 中进行自定义验证?我的 alertdialog 中有一些输入,所以当我单击肯定按钮时,我想验证条件是否为真,如果条件返回 false 我只想显示错误消息并且对话框不应该被关闭。

试过 this , 没有帮助

alertDialogBuilder
.setCancelable(false)
.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
if (true) {
// Do this and dissmiss
} else {
// Do not dismiss the dialog
errormsg.setVisibility(View.VISIBLE);
errormsg.setText("Error");
}

}
})
.setNegativeButton("Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});

AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();

最佳答案

不要在构建器中添加点击监听器。在对话框的 onShow() 或 onStart() 中添加监听器。

builder.setPositiveButton("Proceed", null);

@Override
public void onStart() {
super.onStart();
final AlertDialog dialog = (AlertDialog) getDialog();

if (dialog != null) {
Button positiveButton = dialog.getButton(Dialog.BUTTON_POSITIVE);
positiveButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
}
}

关于android - 如何防止在 Android 中单击肯定按钮时自动关闭 Appcompact AlertDialog?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35742917/

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