AlertDialog.Builder不拒绝android
我有一个AlertDiaog.Builder实例,我想在NegativeButton单击时关闭它。然后我想执行一个任务。所有这些都发生在晃动我的设备时 当前,即使在执行AyncTask之后,AlertDialog.builder也不会关闭 showDialog是从另一个按钮执行的,在该按钮上,一切都很完美。此问题仅在设备抖动时发生 这是我的密码:AlertDialog.Builder不拒绝android,android,android-alertdialog,Android,Android Alertdialog,我有一个AlertDiaog.Builder实例,我想在NegativeButton单击时关闭它。然后我想执行一个任务。所有这些都发生在晃动我的设备时 当前,即使在执行AyncTask之后,AlertDialog.builder也不会关闭 showDialog是从另一个按钮执行的,在该按钮上,一切都很完美。此问题仅在设备抖动时发生 这是我的密码: @Override public void onShake(float force) { // TODO Auto-
@Override
public void onShake(float force)
{
// TODO Auto-generated method stub
hour = cal.get(Calendar.HOUR);
hour = hour+1;
mins = cal.get(Calendar.MINUTE);
timeString = hour+":"+mins+":"+today.second;
showDialog(timeString, "");
}
public void showDialog(String timeString, String title)
{
builder = new AlertDialog.Builder(getActivity());
builder.setTitle(title);
builder.setMessage("Reaching at:"+" "+ timeString+"?");
builder.setNegativeButton("NO", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// Do nothing
dialog.dismiss();
dialog.cancel();
}
});
builder.setPositiveButton("YES", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which)
{
// Do nothing but close the dialog
dialog.cancel();;
new AddStatusTask().execute();
}
});
alert = builder.create();
alert.show();
}
感谢您提供的任何帮助,这很奇怪,因为即使没有“取消”或“取消”,对话框也会以肯定或否定的方式关闭;尝试使用builder.show;而不是alert=builder.create;alert.show 我是否保留了您对话的全局引用以在asynctask结束后dissm?@mtetno不,我没有。我在另一个按钮上执行相同的代码,单击它工作正常的地方。只有当设备受到震动时,这个问题才会发生,而且这是在同一活动中,对吗?你只想在任务完成时关闭它?这很奇怪,因为对话框会在肯定或否定时关闭,即使没有关闭或取消;尝试使用builder.show;而不是alert=builder.create;警惕。显示;也许这是一个背景问题?您可以使用getActivity。