2013-03-03 6 views
0

arraylist에서 하나씩 값을 얻어서 그 값을 TextView으로 설정하고 싶지만 그렇지 않다. 내 코드는 다음과 같습니다안드로이드에있는 arraylist의 모든 값을 얻을 수 없다.

try { 
     // Getting Array of Contents 
     jsonArrar = json.getJSONArray(TAG_CONTENTS); 

     // looping through All Contents 
     for(int i = 0; i < jsonArrar.length(); i++){ 
      JSONObject c = jsonArrar.getJSONObject(i); 
      list = new ArrayList<String>(); 

      String id1=jsonArrar.getJSONObject(i).getString(TAG_ID);     

      list.add(id1); 
     } 

     Iterator<String> iterator = list.iterator(); 
     builder = new StringBuilder(); 
     while (iterator.hasNext()) { 
      String string = iterator.next();     
      builder.append(string+"\n"); 

     } 

     textView.setText(builder); 

위의 방법으로 나는 단지 하나 그것에 대해 이야기에 오신 것을 환영합니다 마지막 값을 얻을.

답변

1

당신은 루프 전에 목록을 선언하고 for 루프 만에 요소를 추가해야합니다

list = new ArrayList<String>();  
for(int i = 0; i < jsonArrar.length(); i++){ 
     JSONObject c = jsonArrar.getJSONObject(i); 


     String id1=jsonArrar.getJSONObject(i).getString(TAG_ID);     

     list.add(id1); 
} 

당신의 접근 방식, jsonArrar의 모든 요소에 대해 당신이 가진 끝낼 수 있도록 새로운 목록을 선언 jsonArrar.length() 마지막 목록 만 액세스 할 수있는 목록 (더 이상 참조가없는 목록)

+0

ok! 이것은'[1,2,3,4]'에있는 데이터를 통해 어떻게 거기에서 각 값을 얻는 지 알 수 있습니다. ?? –

+1

당신이 받기를 기대하는 것 아닌가요? – niculare

+0

오케이! 지금 그것은 작동한다! 덕분에 –

관련 문제