Java 如何在5秒钟内添加微调器样式的流程对话框

Java 如何在5秒钟内添加微调器样式的流程对话框,java,android,Java,Android,在下面的代码中,我希望在用户单击“检查根目录”后5秒钟内出现一个微调器样式的进程对话框。基本上,用户点击按钮后,流程对话框会说“请等待…”5秒钟,然后显示结果。 我该怎么做?请帮忙 Button Root = (Button) findViewById(R.id.Root); Root.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) {

在下面的代码中,我希望在用户单击“检查根目录”后5秒钟内出现一个微调器样式的进程对话框。基本上,用户点击按钮后,流程对话框会说“请等待…”5秒钟,然后显示结果。 我该怎么做?请帮忙

Button Root = (Button) findViewById(R.id.Root);
    Root.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            if (RootTools.isAccessGiven()) {
                    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setIcon(R.drawable.ic_launcher);
                    builder.setTitle("Congratulations!");
                    builder.setMessage("You Have Root Access!");

                    builder.setPositiveButton("OKAY", new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            dialog.cancel();
                        }
                    });

                    AlertDialog dialog = builder.create();
                    dialog.show();
                }

            else  {
                 AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                    builder.setIcon(R.drawable.ic_launcher);
                    builder.setTitle("Oops!");
                    builder.setMessage("No Root Access!");
                    builder.setPositiveButton("OKAY", new DialogInterface.OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialog, int which) {

                            dialog.cancel();
                        }
                    });

                    AlertDialog dialog = builder.create();
                    dialog.show();  
            }
        }

为此,您可以使用jqueryloader。找到Jquery加载程序JS和Jquery CSS,并将它们包含在应用程序中

在页面加载时编写此代码

$.loader({
className:"blue-with-image-2",
content:''
});
write this after the query or process is completed:


$.loader('close');

这将在进程完成后关闭加载程序。您也可以放置一些文本而不是加载器。希望这有帮助

您的意思是在5s后对话框将文本(“请等待…”更改为结果文本?否!“进度”对话框将在5秒后结束,然后出现一个包含结果的对话框。我只是需要进度对话框部分的帮助。我在参数mTimerHandler的mTimeHandler和MTIMExecutor非法修饰符上遇到一些错误;参数mProgressDialog的唯一最终修改器是PermittedDilLegal;只有final才是permittedClare
mProgressDialog
mTimerHandler
onCreate()
方法之前和
mTimeExecutor
方法之外的线程。type ProgressDialog中显示的方法(上下文、CharSequence、CharSequence)不适用于参数(MainActivity,字符串,布尔值)
private Handler mTimerHandler = new Handler();
private ProgressDialog mProgressDialog = null;
private Button Root;


@Override
protected void onCreate(Bundle savedInstanceState) {

    ...........

    Root = (Button) findViewById(R.id.Root);
    Root.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

            mProgressDialog = ProgressDialog.show(MainActivity.this, "", "Please wait...", true);

            mTimerHandler.postDelayed(mTimerExecutor, 5000);
        }
    });

    ...........

}


private Runnable mTimerExecutor = new Runnable() {

    @Override
    public void run() {

        if (mProgressDialog != null) {
            mProgressDialog.dismiss();
        }

        showDialog();
    }
};

private void showDialog() {

    if (RootTools.isAccessGiven()) {

        AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
        builder.setIcon(R.drawable.ic_launcher);
        builder.setTitle("Congratulations!");
        builder.setMessage("You Have Root Access!");

        builder.setPositiveButton("OKAY", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.cancel();
            }
        });

        AlertDialog dialog = builder.create();
        dialog.show();

    } else {

        AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
        builder.setIcon(R.drawable.ic_launcher);
        builder.setTitle("Oops!");
        builder.setMessage("No Root Access!");
        builder.setPositiveButton("OKAY", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {

                dialog.cancel();
            }
        });

        AlertDialog dialog = builder.create();
        dialog.show();  
    }

}
private Handler mTimerHandler = new Handler();
private ProgressDialog mProgressDialog = null;
private Button Root;


@Override
protected void onCreate(Bundle savedInstanceState) {

    ...........

    Root = (Button) findViewById(R.id.Root);
    Root.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

            mProgressDialog = ProgressDialog.show(MainActivity.this, "", "Please wait...", true);

            mTimerHandler.postDelayed(mTimerExecutor, 5000);
        }
    });

    ...........

}


private Runnable mTimerExecutor = new Runnable() {

    @Override
    public void run() {

        if (mProgressDialog != null) {
            mProgressDialog.dismiss();
        }

        showDialog();
    }
};

private void showDialog() {

    if (RootTools.isAccessGiven()) {

        AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
        builder.setIcon(R.drawable.ic_launcher);
        builder.setTitle("Congratulations!");
        builder.setMessage("You Have Root Access!");

        builder.setPositiveButton("OKAY", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.cancel();
            }
        });

        AlertDialog dialog = builder.create();
        dialog.show();

    } else {

        AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
        builder.setIcon(R.drawable.ic_launcher);
        builder.setTitle("Oops!");
        builder.setMessage("No Root Access!");
        builder.setPositiveButton("OKAY", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {

                dialog.cancel();
            }
        });

        AlertDialog dialog = builder.create();
        dialog.show();  
    }

}