Partage
  • Partager sur Facebook
  • Partager sur Twitter

Android ArrayList JSON

ArrayList de JSON ne s'affiche pas

Sujet résolu
    17 novembre 2022 à 19:37:46

    Bonjour à tous,

    Mon problème est que mon ARRAYList n'affiche rien

    ARRAYList: Retour du serveur:

    {"targetList":[{"id":"9","username":"Rick"},{"id":"10","username":"Paul"},{"id":"11","username":"jean"}]}

    Code d'exécution de la méthode qui est lancé depuis le OnCreate:

     public void showTarget() {
            
            String url = "http://10.0.2.2/apiTuto/actions/game/street/showTarget.php";
            final String SHARED_PREF_USER_INFO = "SHARED_PREF_USER_INFO";
            final String SHARED_PREF_USER_INFO_USERNAME = "SHARED_PREF_USER_INFO_USERNAME";
            final String SHARED_PREF_USER_INFO_ID = "SHARED_PREF_USER_INFO_ID";
    
            String pseudo = getSharedPreferences(SHARED_PREF_USER_INFO, MODE_PRIVATE).getString(SHARED_PREF_USER_INFO_USERNAME, null);
            String id = getSharedPreferences(SHARED_PREF_USER_INFO, MODE_PRIVATE).getString(SHARED_PREF_USER_INFO_ID, null);
    
            Map<String, String> params = new HashMap<>();
            params.put( "username", pseudo);
            params.put( "identifiant", id);
            JSONObject parameters = new JSONObject(params);
    
            JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST, url, parameters, new Response.Listener<JSONObject>() {
                @Override
                public void onResponse(JSONObject response) {
    //              onApiResponse(response);
                    //               Toast.makeText(getApplicationContext(), "OPERATION SUCCESSFUL", Toast.LENGTH_LONG).show();
                }
            }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    Toast.makeText(getApplicationContext(), error.getMessage().toString(), Toast.LENGTH_LONG).show();
                }
            });
            databaseManager.queue.add(jsonObjectRequest);
        }

    Code du onApiResponse:

    public void onApiResponse(JSONObject response) {
                if (response != null) {
                    try {
                        JSONArray target = response.getJSONArray("targetList");
    
                        for (int i = 0; i < target.length(); i++) {
    
                            object = target.getJSONObject(i);
                            numero = object.getString("id");
                            name = object.getString("username");
    
                            targetNameTxt.setVisibility(View.VISIBLE);
                            targetNameTxt.setText(name);
    
                            targetIdTxt.setVisibility(View.VISIBLE);
                            targetIdTxt.setText(numero);
    
                        }
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                }
            }


     Votre aide sera grandement apprécié et merci à l'avance.

    NOTE: J'ai réussi en me servant plutôt d'un seul textview et en lançant la method dans le OnResponse de la requete





    -
    Edité par ChazzyQc 18 novembre 2022 à 18:30:46

    • Partager sur Facebook
    • Partager sur Twitter

    Android ArrayList JSON

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown