如何防止单击按钮时对话框关闭
我有一个EditText用于输入的对话框。当我单击对话框上的“是”按钮时,它将验证输入,然后关闭对话框。但是,如果输入错误,我希望保留在同一对话框中。每次无论输入什么,当我单击“否”按钮时,都应自动关闭对话框。如何禁用此功能?顺便说一句,我在对话框上的按钮上使用了PositiveButton和NegativeButton。
回答:
编辑:这仅在API 8+上有效,如某些注释所述。
这是一个较晚的答案,但是您可以在AlertDialog中添加onShowListener,然后在其中可以覆盖按钮的onClickListener。
final AlertDialog dialog = new AlertDialog.Builder(context)        .setView(v)
        .setTitle(R.string.my_title)
        .setPositiveButton(android.R.string.ok, null) //Set to null. We override the onclick
        .setNegativeButton(android.R.string.cancel, null)
        .create();
dialog.setOnShowListener(new DialogInterface.OnShowListener() {
    @Override
    public void onShow(DialogInterface dialogInterface) {
        Button button = ((AlertDialog) dialog).getButton(AlertDialog.BUTTON_POSITIVE);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                // TODO Do something
                //Dismiss once everything is OK.
                dialog.dismiss();
            }
        });
    }
});
dialog.show();
以上是 如何防止单击按钮时对话框关闭 的全部内容, 来源链接: utcz.com/qa/401778.html

