ProgresDialog在调用其他函数两次时不会关闭PostExecute



我有一个从服务器获取响应的AsyncTask。当我得到响应时,我通过调用另一个类的函数来更新数据库。

dbHandler = new DbHandler(getApplicationContext());
new updateDb().execute("ZON", "obtenerCSVzonas");---first call to AsyncTask
new updateDb().execute("CLI", "obtenerCSVclientes");---second call to AsyncTask

@Override
        protected void onPostExecute(String result) {
            // TODO Auto-generated method stub
            super.onPostExecute(result);

            if (update == zoneList)
                dbHandler.CreateZoneEntry(resultString);
            else if (update == custList)
                dbHandler.CreateCustEntry(resultString);
            progDailog.dismiss();
        }

此处的PostExecute方法调用用于更新数据库的函数。

我的问题是,即使函数完成,进度对话框仍然显示。它不驳回。

public class SelectionMenu extends Activity {
    TextView SelectionHeader;
    ImageButton ShoppingList;
    ImageButton Clients;
    String uid;
    String pass;
    ProgressDialog progDailog;

初始化

private class updateDb extends AsyncTask<String, String, String> {
        protected void onPreExecute() {
            super.onPreExecute();
            jsn = new JSONObject();
            header = new JSONObject();
            para = new ArrayList<NameValuePair>();
            progDailog = new ProgressDialog(SelectionMenu.this);
            progDailog.setMessage("UPDATING DATABASE");
            progDailog.show();
        }

第一个任务之前显示您的Progress Dialog,并在第二个任务后将其关闭

最新更新