加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 使用齐射进行网络操作时如何显示ProgressDialog

发布时间:2020-12-15 02:03:22 所属栏目:Java 来源:网络整理
导读:我在一个 Android应用程序上工作,我非常有兴趣使用volley库来执行网络http调用. 但是我的问题我发现这个库在不同的后台线程中进行操作然后当http请求开始执行时我怎么能showProgressDialog然后一旦执行就解雇它. RequestQueue rq = Volley.newRequestQueue(t
我在一个 Android应用程序上工作,我非常有兴趣使用volley库来执行网络http调用.

但是我的问题我发现这个库在不同的后台线程中进行操作然后当http请求开始执行时我怎么能showProgressDialog然后一旦执行就解雇它.

RequestQueue rq = Volley.newRequestQueue(this);
StringRequest postReq = new StringRequest(Request.Method.POST,"http://httpbin.org/post",new Response.Listener<String>() {
    @Override
    public void onResponse(String response) {
        tv.setText(response); // We set the response data in the TextView
    }
},new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {
        System.out.println("Error ["+error+"]");

    }
});

提前致谢.

解决方法

这很直接.在队列中添加请求对象后,启动进度对话框.

//add the request to the queue
rq.add(request);

//initialize the progress dialog and show it
progressDialog = new ProgressDialog(getActivity());
progressDialog.setMessage("Fetching The File....");
progressDialog.show();

然后在收到服务器的响应后关闭对话框.

StringRequest postReq = new StringRequest(Request.Method.POST,new Response.Listener<String>() {
    @Override
    public void onResponse(String response) {
        tv.setText(response); // We set the response data in the TextView
        progressDialog.dismiss();
    }
},new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {
        Log.e(“Volly Error”,”Error: ”+error.getLocalizedMessage());
        progressDialog.dismiss();
    }
});

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读