我正在尝试使用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
显示任何内容。我希望看到一个水平的进度条,它显示加载发生时的进度。我已经调试过了,可以看到调用onProgressUpdate()
时使用的是合理的值,并且调用了对话框的方法。
发布于 2011-07-26 01:43:46
在显示.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
之前,使用向进度对话框添加样式
发布于 2012-04-26 16:21:11
在您的onPreExecute()
中使用此代码。
ProgressDialog prog;
prog = new ProgressDialog(ctx);
prog.setTitle(title);
prog.setMessage(msg);
prog.setIndeterminate(false);
prog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
prog.show();
https://stackoverflow.com/questions/6820085
复制相似问题