我正在使用对话框,以及两个negativeButton
和positiveButton
。但是,我想更改在框外按下时的行为。我已经检查过,关于该主题的所有问题都与在AlertDialog
外部单击时隐藏dialog.dimiss()
有关,但这不是我的问题。我想知道是否有listener
允许我切换此行为(想调用其他方法并删除其他变量)。
JAVA
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(m_activity);
alertDialogBuilder.setTitle("Navigation");
alertDialogBuilder.setMessage("Choose Mode");
alertDialogBuilder.setNegativeButton("Navigation", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialoginterface, int i) {
m_navigationManager.startNavigation(m_route);
m_map.setTilt(60);
startForegroundService();
}
;
});
alertDialogBuilder.setPositiveButton("Simulation", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialoginterface, int i) {
m_activity.findViewById(R.id.address_form).setVisibility(View.INVISIBLE);
m_navigationManager.simulate(m_route, 30);//Simualtion speed is set to 45 m/s
m_map.setTilt(60);
startForegroundService();
}
});
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
例如,您可以添加DismissListener
:
alertDialogBuilder.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
}
});