0

こんにちは、ここにスクリプトがあります

http://myprocity.com/android/fetchthecity.php

それは配列の配列を返します。これを Android で解析し、各値を保存します。

私が今持っているコードはこれです、多分これは欠陥がありますか?何も表示されない

public static void refreshFeed(Activity act){

    ActionEngine.swamiOn = false;

    FetchTheCityTask f = new FetchTheCityTask(act);
    f.execute();

    try {

        if (f.get() != null) {

            JSONArray feedArr = new JSONArray();
            feedArr = json.getJSONArray("data");
            ArrayList<UserRecord> items = new ArrayList<UserRecord>();

            for(int i = 0; i < feedArr.length(); i++){

                for(int j = 0; j < feedArr.getJSONArray(i).length(); j++) {

                    JSONObject row = feedArr.getJSONArray(i).getJSONObject(j);
                    String item = row.getString("Item");
                    String descp = row.getString("Description");
                    String pic = row.getString("PicPath");
                    String time = row.getString("Time");
                    String donatedby = row.getString("DonatedBy");
                    String ebase = row.getString("Ebase");
                    String cond = row.getString("Condition");
                    String loc = row.getString("Location");

                    items.add(new UserRecord(item,descp,pic,time,donatedby,
                            ebase,cond,loc));

                }
            }

            TheCityFragment.feedArea.setAdapter(new UserItemAdapter(act,
                    android.R.layout.simple_list_item_1, items));
4

2 に答える 2

0

で解析された JSON の結果: http://bodurov.com/jsonformatter/は、この結果を示しています:

JSON 結果

json の結果を次のように変更することをお勧めします。

{"data" : [yourjsonArray]}

JSON_ARRAYしたがって、 a 内にカプセル化する必要があるJSON_OBJECTため、 を使用getJSONArray("data")して配列を取得できます。

JSONObject jObject = new JSONObject(resultstringhere); //f.get() ?
JSONArray jArray = jObject.getJSONArray("data");

お役に立てれば、

リード

于 2013-09-18T04:00:25.140 に答える
0

それは配列の配列を返します。

私はそうは思わない、

ファイル「オブジェクトの配列」からわかるので、コードは機能しません。

ここに画像の説明を入力

何かをしてみてください:

JSONArray json = new JSONArray(resultAsString);
// ...

for(int i=0;i<json.length();i++){ 
              //...
               JSONObject row = json.getJSONObject(j);
                String item = row.getString("Item");
                String descp = row.getString("Description");
                String pic = row.getString("PicPath");
                String time = row.getString("Time");
                String donatedby = row.getString("DonatedBy");
                String ebase = row.getString("Ebase");
                String cond = row.getString("Condition");
                String loc = row.getString("Location"); 
          //..         
}

それがあなたを助けることを願っています

于 2013-09-17T21:50:55.827 に答える