具有ProgressDialog和进度条的AsyncTask

我正在尝试使用AsyncTask加载确定长度的文件。 我的AsyncTask看起来像这样:

 protected void onPreExecute() { dialog = ProgressDialog.show(MyActivity.this, null, "Loading", false); } protected void onProgressUpdate(Integer... values) { if (values.length == 2) { dialog.setProgress(values[0]); dialog.setMax(values[1]); } } 

在我的doInBackground()实现中,我调用了publishProgress(bytesSoFar, maxBytes); 在我的加载循环内和onPostExecute()我调用dialog.dismiss()

但是,我不能让ProgressDialog显示任何东西,但不确定的微调。 我想看到一个水平的进度条,显示加载发生的进度。 我已经debugging,可以看到onProgressUpdate()被调用与理智值,对话框的方法正在调用。

Solutions Collecting From Web of "具有ProgressDialog和进度条的AsyncTask"

将样式添加到您的进度对话框,然后再显示它.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);

onPreExecute()使用此代码。

  ProgressDialog prog; prog = new ProgressDialog(ctx); prog.setTitle(title); prog.setMessage(msg); prog.setIndeterminate(false); prog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); prog.show();