如何设置进度条直到从服务器使用json获取数据?

时间:2013-01-18 10:25:58

标签: android android-asynctask

  

可能重复:
  Android AsyncTask Progress bar

我正在使用登录过程,在服务器上获取数据的时间是延迟。所以我想设置一个进度条为tat delay.how设置进度条直到得到服务器的响应。有人知道答案请帮帮我

3 个答案:

答案 0 :(得分:5)

private class LongOperation extends AsyncTask<String, Void, String> 
{
    protected void onPreExecute() 
    { 
        progressDialog = new ProgressDialog(activity.this); 
        progressDialog.setTitle("Processing...");
        progressDialog.setMessage("Please wait...");
        progressDialog.setCancelable(true);
        progressDialog.show();
    }

    protected String doInBackground(String... params) 
    {
        try 
        {
            //Getting data from server
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
    protected void onPostExecute(String result) 
    {

        progressDialog.dismiss();
        Intent n = new Intent(firstactivity.this, secondactivity.class);
        startActivity(n);
    }
  }

如何调用此

ProgressDialog progressDialog;
LongOperation mytask = null;
mytask = new LongOperation();
mytask.execute();

答案 1 :(得分:0)

在代码中使用AsyncTask并将代码放在doInBackground(....)进程中。

在onPreExecute中显示您的进度对话框并在onPostExecute(...)中将其关闭。

答案 2 :(得分:0)

为您的布局添加无限进度条视图,并使其首先不可见。

创建AyncTask以进行服务器通信。

onPreExecute()中,可以显示进度条。

onPostExecute()中再次隐藏进度条。