VIEW не привязан к менеджеру окон

Я разрабатываю приложение, в котором есть четыре вкладки.. при каждом выполнении отдельных операций. на последней вкладке, когда операция завершена. Обновление приложения обновлено.

проблема заключается в том, когда приложение обновляет ошибку утечки окна. Получается не привязано к диспетчеру окна. Ошибка показана в строке

 @Override
            protected void onPostExecute(Void result) {
                super.onPostExecute(result);
                if (pDialog.isShowing())
                    pDialog.dismiss();
                populateSpinner();
            }

точно в pDialog.dismiss();

основные компоненты активности показаны ниже

public class DayStartActivity extends Activity {
    ProgressDialog pDialog;
@Override
    protected void onCreate(Bundle savedInstanceState) {
    new Getdata().execute();

    //  new GetRouteoptmdata().execute();
    }
private class Getdata extends AsyncTask<Void, Void, Void> {

        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            pDialog = new ProgressDialog(DayStartActivity.this);
            pDialog.setMessage("ON PROCESS..PLEASE WAIT..");
            pDialog.setCancelable(true);
            pDialog.show();

        }

        @Override
        protected Void doInBackground(Void... arg0) {
            ServiceHandler jsonParser = new ServiceHandler();
            String json = jsonParser.makeServiceCall(URL_DAYSTARTDATA,
                    ServiceHandler.POST);


            if (json != null) {
                try {
                    if(json.contains("<!--"))

                        json=json.substring(0, json.indexOf("<!--"));
                    Log.e("Response according to Gettabledata:: ", " " + json);
                    // JSONObject jsonObj = new JSONObject(json);
                    // if (jsonObj != null) {
                    JSONArray daystartdata = new JSONArray(json);
                    // .getJSONArray("categories");

                    for (int i = 0; i < daystartdata.length(); i++) {
                        JSONObject jsonChildNode = daystartdata
                                .getJSONObject(i);

                        DaystartSetGet daystart = new DaystartSetGet(
                                jsonChildNode.getString("altroutecode"),
                                jsonChildNode.getString("route"),
                                jsonChildNode.getString("salesrep"),
                                jsonChildNode.getString("name"),
                                jsonChildNode.getString("date"),
                                jsonChildNode.getString("time"),
                                jsonChildNode.getString("deleverydate"),
                                jsonChildNode.getString("week"),
                                jsonChildNode.getString("day"),
                                jsonChildNode.getString("vehiclenumber"));

                        routecodelist.add(daystart);

                    }
                    // }

                } catch (JSONException e) {
                    e.printStackTrace();
                }

            } else {
                Log.e("JSON Data", "Didn't receive any data from server!");
            }



            return null;
        }

        @Override
        protected void onPostExecute(Void result) {
            super.onPostExecute(result);
            if (pDialog.isShowing())
                pDialog.dismiss();
        }

    }

когда приложение запускается в первый раз, проблем нет. проблема возникает, когда вкладки обновляются.

Пожалуйста, помогите мне. Спасибо заранее

Ответ 1

- это активность на переднем плане, и вы не открываете никаких новых действий?

также, рассмотрели ли вы использование ViewSwitcher в контейнере вкладок вместо диалога? google предлагает избегать диалогов (особенно ProgressDialog), когда это возможно: http://developer.android.com/guide/topics/ui/dialogs.html

если вы хотите использовать ProgressDialog, подумайте обо всех возможных состояниях, в которых должно быть отклонено диалоговое окно: активность уничтожается, асинхронная отмена (которая должна, по крайней мере, должна произойти, когда действие уничтожается и когда пользователь отменяет диалог, в зависимости от логики вашего приложения).