Android 是否应该在setPositiveButton或setNegativeButton或其他onClick中的onClick中调用dismise()?
必须在onClick中调用disclose()? 如果我没有调用disclose(),对话框仍然可以关闭Android 是否应该在setPositiveButton或setNegativeButton或其他onClick中的onClick中调用dismise()?,android,android-alertdialog,Android,Android Alertdialog,必须在onClick中调用disclose()? 如果我没有调用disclose(),对话框仍然可以关闭 @Override public Dialog onCreateDialog(Bundle savedInstanceState) { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); Bundle args = getArguments(); if (args.contains
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
Bundle args = getArguments();
if (args.containsKey(ARG_MESSAGE_INT)) {
builder.setMessage(args.getInt(ARG_MESSAGE_INT));
} else if (args.containsKey(ARG_MESSAGE_STRING)) {
builder.setMessage(args.getString(ARG_MESSAGE_STRING));
}
if (args.containsKey(ARG_TITLE_INT)) {
builder.setTitle(args.getInt(ARG_TITLE_INT));
} else if (args.containsKey(ARG_TITLE_STRING)) {
builder.setTitle(args.getString(ARG_TITLE_STRING));
}
builder
.setPositiveButton(R.string.alert_dialog_ok,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
if (null != buttonOnClickListener)
buttonOnClickListener.onPositiveClick();
}
}
)
.setNegativeButton(R.string.alert_dialog_cancel,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
if (null != buttonOnClickListener)
buttonOnClickListener.onNegativeClick();
}
}
);
return builder.create();
}
如果使用构建器创建对话框并在其中设置侦听器,则单击任何按钮都会自动关闭对话框,您无需调用Disclose
如果覆盖“单击侦听器”以防止对话框自动关闭(可能是因为希望在释放对话框之前验证某些数据),则需要调用“关闭”。为此,您需要覆盖onStart中的click侦听器。onNegativeClick()的作用是什么?它将关闭对话框,