当我点击OK按钮时,Android AlertDialog总是退出
是否有方法在单击“确定”时进行验证。我并没有拒绝它,但当我点击Ok时它会关闭。我编写了一个自定义的AlertDialog,它使用一些编辑文本。问题是我不能验证任何东西。若验证失败,我想更改消息并告诉用户,但它只是关闭。我正在使用AlertBuilder当我点击OK按钮时,Android AlertDialog总是退出,android,Android,是否有方法在单击“确定”时进行验证。我并没有拒绝它,但当我点击Ok时它会关闭。我编写了一个自定义的AlertDialog,它使用一些编辑文本。问题是我不能验证任何东西。若验证失败,我想更改消息并告诉用户,但它只是关闭。我正在使用AlertBuilder builder.setPositiveButton(DialogInterface.OnClickListener(){ @Override public void o
builder.setPositiveButton(DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
// I don't dismiss here.
}
}
可以通过重写onClickListener来实现这一点。诀窍是在创建并显示对话框后获取按钮
// Create you dialog here and show it
...
dialog.show();
Button positiveButton = dialog.getButton(DialogInterface.BUTTON_POSITIVE);
positiveButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View onClick) {
// Valid checking
...
if (valid) {
dialog.dismiss();
} else {
// Not valid
}
}
});
如果您在onClick方法中没有写入任何内容,那么无论您是否想要,它都会忽略,那么既然您没有在该方法中写入任何内容,为什么还要问这个问题呢。由于它是alertdialog,它将关闭,如果您不想关闭它,请使用setNeutralButton而不是setPositiveButton。如果您使用中性按钮,它将不会关闭。您可以显示一些代码吗?…请暂停以上评论…发布您的答案。除了-1setNeutralButton还可以写其他内容-1setNeutralButton也会自动关闭,但不足以仅使用neutral。然后不要使用Alert对话框,而是创建自己的自定义对话框使用AlertDialog可能有原因。。。这就是我所说的,也可能有原因,当你不只是想提示用户,当你想让用户输入一些东西并在里面操纵输入,但你想在同一个对话框上显示输出,那么它不再是一个警告对话框,它只是一个对话框,警报对话框用于向用户发出警报。就像我们可以创建一个登录对话框一样,它应该在自定义对话框中,而不是在警报对话框中,并且它可以为您提供所有自定义内容,您可以使用与自定义列表视图相同的视图。可能在显示之后,而不仅仅是在生成器之后。create()?现在似乎可以工作了,因为我将上述代码放在dialog.show()之后