2015-12-02 6 views
0

Попытка отображения данных JSONArray в android listview. Но я не могу ее получить. Вот исходный кодОтображение результатов JSONArray в представлении списка андроидов

   @Override 
       public void onSuccess(String response) { 
       // Hide Progress Dialog 
       prgDialog.hide(); 
       try { 
       Log.d("sssss..", "rrrrr..."); 
        // JSON Object 
        //JSONObject obj = new JSONObject(response); 
        JSONArray obj=new JSONArray(response); 
        Log.d("hello", "hiiii"); 
        for (int i = 0; i < obj.length(); i++) { 
         Log.d("srikanth", "hiiii"); 
          // JSONObject obj2 = obj.getJSONObject(i); 
         Log.d("TEST", obj.toString()); 
        } 

      } catch (JSONException e) { 

       e.printStackTrace(); 

      } 
     } 

и следующий вывод я получаю в LogCat

12-02 16:18:44.000: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.000: D/srikanth(272): hiiii 
12-02 16:18:44.000: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.010: D/srikanth(272): hiiii 
12-02 16:18:44.010: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.010: D/srikanth(272): hiiii 
12-02 16:18:44.021: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.021: D/srikanth(272): hiiii 
12-02 16:18:44.030: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.030: D/srikanth(272): hiiii 
12-02 16:18:44.040: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.050: D/srikanth(272): hiiii 
12-02 16:18:44.050: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.050: D/srikanth(272): hiiii 
12-02 16:18:44.060: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.060: D/srikanth(272): hiiii 
12-02 16:18:44.060: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.060: D/srikanth(272): hiiii 
12-02 16:18:44.070: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.070: D/srikanth(272): hiiii 
12-02 16:18:44.070: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

12-02 16:18:44.070: D/srikanth(272): hiiii 
12-02 16:18:44.080: D/TEST(272): [{"id":12,"num":"321"},{"id":11,"num":"clinical"},{"id":10,"num":"fsd"},{"id":9,"num":"2015"},{"id":8,"num":"133"},{"id":7,"num":"007"},{"id":6,"num":"TESTSTUDY"},{"id":5,"num":"111"},{"id":4,"num":"1000"},{"id":3,"num":"121"},{"id":2,"num":"s one"},{"id":1,"num":"Default_Study"}] 

ответ

0

Вы должны выполнять пользовательские Adapter для ListView. Посмотрите на this other question

+0

пожалуйста, вы можете показать? как это сделать в моем коде. – srikanthg

0

Получите данные, то есть «id» & «num» из ваших данных JSON, используя следующий код.

try { 
    JSONArray JSON = new JSONArray(response); 

    for (int i = 0; i < JSON.length(); i++) { 
     JSONObject obj = JSON.getJSONObject(i); 
     String id = obj.getString("id"); 
     String num = obj.getString("num"); 

     Log.e("JSON", "id : : " + id); 
     Log.e("JSON", "num : : " + num); 
    } 

} catch (JSONException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 

положить этот идентификатор и данные в какой-то список или массив,

использовать BaseAdapter, чтобы установить эти данные на ListView.

Принять как ответ, если полезно.

1
 package com.example.expandablelistadapter; 

public class Data { 
    public String id; 
    public String num; 
    public String getId() { 
     return id; 
    } 
    public void setId(String id) { 
     this.id = id; 
    } 
    public String getNum() { 
     return num; 
    } 
    public void setNum(String num) { 
     this.num = num; 
    } 
    @Override 
    public String toString() { 
     return "id=" + id + ", num=" + num + ""; 
    } 


} 


     try { 
      List<Data> dataList= new ArrayList<>(); 

       JSONArray JSON = new JSONArray(response); 

       for (int i = 0; i < JSON.length(); i++) { 
        JSONObject obj = JSON.getJSONObject(i); 
        Data d = new Data(); 
        d.setId(obj.getString("id")); 
        d.setNum(obj.getString("num")); 
        dataList.add(d); 

       } 
       ArrayAdapter<Data> itemsAdapter =new ArrayAdapter<Data>(this,android.R.layout.simple_list_item_1, dataList); 
       ListView listView = (ListView) findViewById(R.id.lvItems); 
       listView.setAdapter(itemsAdapter); 

      } catch (JSONException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 

, как описано выше и может установить элемент данных для ListView и у также можно определить ур собственный адаптер также

и код XML для представления списка:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <ListView 
     android:id="@+id/lvItems" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" > 
    </ListView> 



</LinearLayout> 
+0

Я получаю ошибку в строке ListView listView = (ListView) findViewById (R.id.lvItems); не может быть разрешено или не поле – srikanthg

+0

что есть в simple_list_item_1 ?? пожалуйста, дайте мне знать – srikanthg

+0

Я сделал именно то, что вы сказали ... но нит получал выход и никаких ошибок ... – srikanthg

Смежные вопросы