2011-10-11 4 views
0

String []으로 ListView를 채우려고합니다. 문제는 내가 다른 배열과 함께 occurences 찾을 때이 채우기를 만들 싶습니다. 설명하려고합니다. ArrayList가 있습니다. [0,1,0,0,1, ...] 사용자가 퀴즈 세션에 응답 할 때마다 변경됩니다. 예 : 10 개의 질문, 10 개의 답변 및 그래서 ArrayList의 크기 = 10 당신이 볼 수 있듯이 0은 "오답"이고 1은 "정답"입니다. 그래서 데이터베이스의 퀴즈 테이블에 따라 최대 크기로 ArrayList를 만들고이를 "domandesatte"라고합니다.안드로이드 ListView로 채워진 String []

올바른 답변 ("Domanda # : Esatta는 질문 # : 올바른 답변을 의미합니다)과 잘못된 답변 ("Domanda # : ERRATA! "는"Question # : Wrong "을 의미합니다.

listView = (ListView)findViewById(R.id.list2); 
     listView.setTextFilterEnabled(true); 
     listView2 = (ListView)findViewById(R.id.listSbagliato); 
      listView2.setTextFilterEnabled(true); 
final String[] domandesatte = {"Domanda n°1: ESATTA!","Domanda n°2: ESATTA!","Domanda n°3: ESATTA!", 
      "Domanda n°4: ESATTA!","Domanda n°5: ESATTA!","Domanda n°6: ESATTA!", 
      "Domanda n°7: ESATTA!","Domanda n°8: ESATTA!","Domanda n°9: ESATTA!", 
      "Domanda n°10: ESATTA!","Domanda n°11: ESATTA!","Domanda n°12: ESATTA!", 
      "Domanda n°13: ESATTA!","Domanda n°14: ESATTA!","Domanda n°15: ESATTA!", 
      "Domanda n°16: ESATTA!","Domanda n°17: ESATTA!","Domanda n°18: ESATTA!", 
      "Domanda n°19: ESATTA!","Domanda n°20: ESATTA!","Domanda n°21: ESATTA!", 
      "Domanda n°22: ESATTA!","Domanda n°23: ESATTA!"}; 

final String[] domanderrate = {"Domanda n°1: ERRATA!","Domanda n°2: ERRATA!","Domanda n°3: ERRATA!", 
      "Domanda n°4: ERRATA!","Domanda n°5: ERRATA!","Domanda n°6: ERRATA!", 
      "Domanda n°7: ERRATA!","Domanda n°8: ERRATA!","Domanda n°9: ERRATA!", 
      "Domanda n°10: ERRATA!","Domanda n°11: ERRATA!","Domanda n°12: ERRATA!", 
      "Domanda n°13: ERRATA!","Domanda n°14: ERRATA!","Domanda n°15: ERRATA!", 
      "Domanda n°16: ERRATA!","Domanda n°17: ERRATA!","Domanda n°18: ERRATA!", 
      "Domanda n°19: ERRATA!","Domanda n°20: ERRATA!","Domanda n°21: ERRATA!", 
      "Domanda n°22: ERRATA!","Domanda n°23: ERRATA!"}; 

for(int i=0;i<vettoreint.size();i++) 
     { 
    if (vettoreint.get(i) == 1) { 

     listView.setAdapter(new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_1, domandesatte)); 
     listView.setTextFilterEnabled(true);  
    } 
    else { 
     if(vettoreint.get(i) == 0) 
     { 

     listView2.setAdapter(new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_1, domandesatte)); 
     listView2.setTextFilterEnabled(true); 

     } 
     } 
     } 

내가하고 싶은 모든 (오답에 대한 정답에 대한 1, 1) 2 개의 ListView를 보는 것입니다 따라,

마지막으로 "vettoreint는"내가 Intent.getIntegerArrayListExtra()에서 얻을 ArrayList에있다 ArrayList 예제 : 10 개의 답변, 5 개의 "Question # Correct", 5 "Question # Wrong"

domandesatte [i]를 넣으려고하는데 어댑터에 따라 올바르지 않습니다. 그래서 나는 subList (i, i + 1)을 넣으려고했지만 마지막 두 번만 반환합니다. 하나는 올바른 것이고 다른 하나는 잘못된 것입니다.

의견이 있으십니까? 내 영어로 죄송합니다. 그리고 당신의 위대한 지원에 감사드립니다!

답변

0

내가 문제를 이해했는지 모르겠하지만 당신은 이런 식으로 할 수 없었다 :

private ArrayList<String> domandesatte = new ArrayList<String>(); 
private ArrayList<String> domanderrate = new ArrayList<String>(); 

.... 

for(int i=0;i < vettoreint.size();i++) { 
    if (vettoreint.get(i) == 1) { 
     domandesatte.add("Domanda n°" + i + ": ESATTA!"); 
    } else { 
     domanderrate.add("Domanda n°" + i + ": ERRATA!"); 
    } 
} 

listView.setAdapter(new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_1, domandesatte)); 

listView2.setAdapter(new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_1, domanderatte)); 
관련 문제