user1410081
user1410081

Reputation:

Android get elements from json array

I'm trying to get elements from my json array.

this is my json response:

{"IDs":["635426812801493839","635429094450867472","635433640807558204"]}

This is what I've tried so far:

itemList = new ArrayList<HashMap<String, String>>();

            JSONArray a = jsonObj.getJSONArray(Constants.IDS);
            int arrSize = a.length();
            ArrayList<String> stringArray = new ArrayList<String>();
            for (int i = 0; i < arrSize; ++i) {
                JSONObject obj = a.getJSONObject(i);
                stringArray.add(obj.toString());
                item = new HashMap<String, String>();
                item.put(Constants.ID, obj.toString());
                itemList.add(item);
            }

            Log.e("ARR COUNT", "" + stringArray.size());

But I'm getting empty list. What is wrong with my code? Any help will be truly appreciated. Thanks.

Upvotes: 2

Views: 98

Answers (3)

Paritosh
Paritosh

Reputation: 2137

Use this

itemList = new ArrayList<HashMap<String, String>>();

JSONArray a = jsonObj.getJSONArray(Constants.IDS);
int arrSize = a.length();
ArrayList<String> stringArray = new ArrayList<String>();
for (int i = 0; i < arrSize; ++i) {                
    stringArray.add(a.getString(i));
    item = new HashMap<String, String>();
    item.put(Constants.ID, obj.toString());
    itemList.add(item);
}

Log.e("ARR COUNT", "" + stringArray.size());

Upvotes: 0

Ankit Kumar
Ankit Kumar

Reputation: 3723

JSONObject obj = a.getJSONObject(i);

replace with

String str = a.getString(i);

Upvotes: 2

Blackbelt
Blackbelt

Reputation: 157437

The for loop should be

for (int i = 0; i < arrSize; ++i) {
      stringArray.add(a.getString(i));

your the JSONArray contains already string

Upvotes: 5

Related Questions