Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AlertDialog.Builder不拒绝android_Android_Android Alertdialog - Fatal编程技术网

AlertDialog.Builder不拒绝android

AlertDialog.Builder不拒绝android,android,android-alertdialog,Android,Android Alertdialog,我有一个AlertDiaog.Builder实例,我想在NegativeButton单击时关闭它。然后我想执行一个任务。所有这些都发生在晃动我的设备时 当前,即使在执行AyncTask之后,AlertDialog.builder也不会关闭 showDialog是从另一个按钮执行的,在该按钮上,一切都很完美。此问题仅在设备抖动时发生 这是我的密码: @Override public void onShake(float force) { // TODO Auto-

我有一个AlertDiaog.Builder实例,我想在NegativeButton单击时关闭它。然后我想执行一个任务。所有这些都发生在晃动我的设备时

当前,即使在执行AyncTask之后,AlertDialog.builder也不会关闭

showDialog是从另一个按钮执行的,在该按钮上,一切都很完美。此问题仅在设备抖动时发生

这是我的密码:

@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。