Невозможно пропустить прогресс по умолчанию, диалог прогресса andorid - PullRequest
1 голос
/ 29 марта 2020

Я новичок в Android и изучаю его самостоятельно. Я пытаюсь реализовать ProgressDialog по умолчанию *1002*, но проблема в том, что при вызове метода dismiss() в моем сетевом ответе не игнорируется.

private void loadData() {
//        rooms.clear();
        final ProgressDialog progress = new ProgressDialog(getContext());
        progress.show(getContext(),"Loading..","Please wait");
        progress.show();    
        RequestQueue requestQueue = Volley.newRequestQueue(context);
        JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET, Api.getAllPost, null, new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {
                progress.dismiss();
                try {
                    JSONArray array = response.getJSONArray("data");
                    for (int i = 0; i < array.length(); i++) {
                        JSONObject object = array.getJSONObject(i);
                        Room room = new Gson().fromJson(object.toString(),Room.class);
//                        Toast.makeText(context, "Sucess", Toast.LENGTH_SHORT).show();
                        rooms.add(room);
                    }
                    roomAdapter.notifyDataSetChanged();
                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                progress.dismiss();
                Toast.makeText(context, "Server error", Toast.LENGTH_SHORT).show();
            }
        });
        requestQueue.add(jsonObjectRequest);
    }

Я попробовал другое решение в этот сайт, но не работал. Пожалуйста, кто-нибудь, помогите мне.

1 Ответ

1 голос
/ 29 марта 2020

Прежде всего, не используйте ProgressDialog, так как это устарело. Но для вашего решения попробуйте заменить ваш код:

final ProgressDialog progress = new ProgressDialog(getContext());
progress.show(getContext(),"Loading..","Please wait");
progress.show();

На код ниже:

final ProgressDialog progress = new ProgressDialog(getContext());
progress.setTitle("Loading..");
progress.setMessage("Please wait");
progress.setCancelable(false);
progress.show();

это должно работать :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...