当我的应用程序启动时,它会执行大量扫描;遍历根文件夹以查找某些特定文件夹,然后扫描视频文件。问题是我在应用程序启动时大约需要4到5秒的空白屏幕。我想显示进度条,但似乎应用程序不会等待进度条出现;相反,它继续进入耗时的遍历循环,然后它显示进度条..有人可以给出一个例子或建议..我有一个想法,AsynTask可能会有所帮助,但我正在寻找一个特定的例子..
谢谢大家。
答案 0 :(得分:2)
private class xyz extends AsyncTask<Void, Void, Void> {
private final ProgressDialog dialog = new ProgressDialog(tranning.this);
@Override
protected void onPreExecute() {
this.dialog.setMessage("Please Wait...");
this.dialog.show();
// put your code which preload with processDialog
}
@Override
protected Void doInBackground(Void... arg0) {
// put your code here
return null;
}
@Override
protected void onPostExecute(final Void unused) {
if (this.dialog.isShowing()) {
this.dialog.dismiss();
}
}
}
并在main ::
中使用它new xyz().execute();
答案 1 :(得分:0)
将onCreate()方法中显示进度条的代码放在所有遍历代码之上,然后尝试它可能对它有帮助。