我的应用程序中有一个奇怪的问题。
让我解释一下...我有一个 ListView 显示几个项目。当我单击这些项目时,我会显示一个带有是和否按钮的 alertDialog。警报显示正常,当我单击按钮时,会调用 onclick 处理程序并执行我的代码。到目前为止还不错吧?
但是当我离开这个视图(返回)并开始一些其他活动时,然后返回到这个视图。我可以在列表中选择一个项目,会显示 alertDialog 但是当我单击一个按钮时没有任何反应。它没有进入我的 onClick 方法。
太奇怪了,我尝试了不同的技术来显示 alertDialog 并捕捉事件,但每次我遇到同样的问题。我在 logcat 中没有转储或日志...
下面是我如何调用 AlertDialog 的代码
public void onListItemClick(ListView l, View v, int position, long id) {
cancelAppointment(position);
}
public void cancelAppointment(int position){
selectedPosition = position;
Util.getInstance().setApptToDelete(appointmentsArray.get(position));
askConfirmation();
}
public void askConfirmation(){
String message = "Are you sure you want to cancel this appointment?";
AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
alertbox.setMessage(message);
alertbox.setPositiveButton("Yes", this);
alertbox.setNegativeButton("No", this);
AlertDialog ald = alertbox.create();
ald.show();
//alertbox.show();
}
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
if(which == -2){
// no
dialog.cancel();
}else{
// yes
dialog.cancel();
if(Util.getInstance().getCreateBookingResult() != 0){
new CancelAppointment().execute("");
pb.setVisibility(View.VISIBLE);
}
}
}
有人知道这个错误吗?更重要的是,知道如何解决它吗?
感谢你们,
任何帮助将不胜感激。