如何在活动开始时显示progressdialog?

时间:2012-06-18 10:05:21

标签: android android-asynctask progressdialog

我有一项活动,可能需要在启动时加载数据。

我已经阅读了其他一些问题,所有这些都涉及将progressdialog传递给asycntask(like this one,它必须加载数据并在完成后将其关闭。由于方法getNewData,我的应用程序无法选择启动5个asynctasks并在完成后返回。

任何人都知道如何确保显示progressdialog? atm屏幕只是保持黑色,直到应用程序完成加载。

ProgressDialog pd = ProgressDialog.show(this, "Loading...", "Loading data", true);
dataCommunicator.getNewData(this);
pd.dismiss();

1 个答案:

答案 0 :(得分:1)

您可以在其中使用主AsyncTask,其他线程可以在doInBackground()中运行。在此主progressDialog AsyncTask中显示onPreExecute()

维护一个int变量,该变量可以通过子AsyncTask访问,并在子进程完成操作时更新其值。当该int等于5从主AsyncTask doInBackground()返回并取消progressDialog中的onPostExecute()时。