1

我正在尝试解析从网络数据库获得的响应。我只得到一个值,即作为响应的卖家 ID。当我尝试在 JSON 对象中传递它时,不知何故,它没有执行之后的 toast 和没有执行之后的 toast。

我知道有很多相关的问题,但我找不到什么问题......请帮忙。谢谢。

        try {

        JSONArray jArray = new JSONArray(stuff.toString());

        Toast.makeText(this, "len: " + jArray.length(), 1000).show(); // length is 1

        for (int i = 0; i < jArray.length(); i++) {
            Toast.makeText(this, "Arr: " + stuff, 1000).show(); 
                              // Arr: [{"seller_id":"5"}]

            JSONObject jObject = jArray.getJSONObject(i);
            j_id = jObject.getString(stuff);

                            // not getting executed
            Toast.makeText(this, "JSON: " + j_id, 1000).show();
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }
    Toast.makeText(this, "View: " + j_id, 1000).show(); // j_id is giving null value

这是我的 json 数据 [{"seller_id":"5"}] 我正在尝试从中获取卖家 ID(即此处为 5)的值。

4

2 回答 2

2

jObject.getString() 方法 args 有问题

JSONObject jObject = jArray.getJSONObject(i);
        j_id = jObject.getString(stuff);

你给的数组。它应该是对象的名称,即 Seller_id

所以修改后你的代码将是 j_id = jObject.getString("seller_id");

于 2013-04-08T06:42:10.240 回答
0

在以下代码之后:

j_id = jObject.getString(stuff);

添加 textview.settext(j_id);

textview并用你的名字改变这个文本视图

如果它不起作用,则显示您的完整json data.

于 2013-04-08T06:40:31.607 回答