进度对话框不在Asynctask内打开

时间:2016-06-04 16:08:03

标签: android android-asynctask dialog progressdialog

在我的API交互期间,持续5秒,我需要使用进度对话框。

我的代码:

public class finalizaPedido extends AsyncTask<Object, Void, Integer> {

private String retorno;
private String url;
private String param = "?";
private View view;

public finalizaPedido(View v) {
    view = v;
}

@Override
protected void onPreExecute() {
    super.onPreExecute();
    pd = ProgressDialog.show(getActivity(), "Loading...","Loading...");
}

@Override
protected void onPostExecute(Integer pedID) {
    pd.dismiss();

    view.getContext().startActivity(new Intent(view.getContext(), ActivityPedidoFinalizacao.class));
}

@Override
protected Integer doInBackground(Object... params) {
    String lojaid = (String) params[0];
    String carrinhoid = (String) params[1];
    String formapagamento = (String) params[2];
    String qtdparcela = (String) params[3];
    String frete = (String) params[4];
    String idbonus = (String) params[5];
    String endid = (String) params[6];
    String previsaoentrega = (String) params[7];

    url = "http://xxx.xx.xxx.xx/JustForMoms/Pedido/FinalizaPedido/" + lojaid + "/" + carrinhoid + "/" + formapagamento + "/" + qtdparcela + "/";

    param += "isApp=true";

    if (!frete.equals("")) {
        if (!param.equals("?")) param += "&";
        param += "frete=" + frete;
    }

    if (!idbonus.equals("")) {
        if (!param.equals("?")) param += "&";
        param += "idbonus=" + idbonus;
    }

    if (!endid.equals("")) {
        if (!param.equals("?")) param += "&";
        param += "endid=" + endid;
    }

    if (!previsaoentrega.equals("")) {
        if (!param.equals("?")) param += "&";
        param += "previsaoentrega=" + previsaoentrega;
    }

    webclient client = new webclient(url.replace(" ", "%20") + param.replace(" ", "%20"));
    retorno = client.getmodel();

    if (retorno != null) {
        try {
            return Integer.parseInt(retorno);
        } catch (Exception e){
            Toast.makeText(getContext(), "Houve um problema na criação do seu pedido. Por favor tente novamente e caso o problema persistir, entre em contato com a Equipe do Blubalu.", Toast.LENGTH_LONG);
        }
    }

    return 0;
}

}

当我点击调用任务的按钮时,进度对话框不会出现。它只在申请结束时出现(只是闪烁)。

任何帮助?

0 个答案:

没有答案