私はアンドロイドが初めてです。クイズアプリの企画をしています。質問と回答の表示に問題があります。
私の問題は、質問と回答を配列に保存したことです。質問と回答は表示されていますが、順番どおりではありません。
データベースから質問と回答を取得しました。それらは順番に来ていますが、私の配列リストでは順番になっていません。質問と回答が一致しません。
正しい順番を合わせて出題の正しい順番で表示する方法。
私を助けてください、そして前もって感謝します。
code
protected void onPostExecute(String file_url) {
pDialog.dismiss();
ques1=new ArrayList<String>(new HashSet<String>(ques1));
System.out.println(" Question array:"+ques1);
String[] quesArr = new String [ques1.size()];
quesArr = ques1.toArray(quesArr);
for(String s: quesArr){
Collections.sort(ques1, new Comparator<String>() {
@Override
public int compare(String lhs, String rhs) {
// TODO Auto-generated method stub
return 0;
}
});
System.out.println("All Array Questions:"+s);
final TextView txtque = (TextView) findViewById(R.id.que_txt);
final String text=ques1.get(j).toString();
System.out.println("Array:"+text);
txtque.setText(text);
}
try {
int i = 0;
// answ1=new ArrayList<String>(new HashSet<String>(answ1));
JSONObject c = groups.getJSONObject(i);
String answer = c.getString(TAG_ANSW);
System.out.println("Checking ::"+answer);
answ=answer;
HashMap<String, String> map1 = new HashMap<String, String>();
answ1.add(answer);
System.out.println(" Answer array:"+answ1);
String[] answArr = new String [answ1.size()];
answArr = answ1.toArray(answArr);
for(String A: answArr){
Collections.sort(answ1, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return s1.compareToIgnoreCase(s2);
}
});
System.out.println("All Array Answers:"+A);
}
final TextView txtRadio = (TextView) findViewById(R.id.rdtxt);
btn_practicerg =(RadioGroup) findViewById(R.id.rdgroup);
btn_practice1 = (RadioButton) findViewById(R.id.RB1);
btn_practice1.setText(String.valueOf(answArr[0]));
btn_practice2 = (RadioButton) findViewById(R.id.RB2);
btn_practice2.setText(String.valueOf(answArr[1]));
btn_practice3 = (RadioButton) findViewById(R.id.RB3);
btn_practice3.setText(String.valueOf(answArr[2]));
btn_practice4 = (RadioButton) findViewById(R.id.RB4);
btn_practice4.setText(String.valueOf(answArr[3]));
btn_practicerg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId)
{
RadioButton checkedRadioButton = (RadioButton) findViewById(checkedId);
}
});
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
btn_practicerg.clearCheck();
Button nextBtn = (Button) findViewById(R.id.nxt_btn);
nextBtn.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){
j++;
TextView txtque = (TextView) findViewById(R.id.que_txt);
txtque.setText(ques1.get(j).toString());
k++;
btn_practice1.setText(answ1.get(k).toString());
k++;
btn_practice2.setText(answ1.get(k).toString());
k++;
btn_practice3.setText(answ1.get(k).toString());
k++;
btn_practice4.setText(answ1.get(k).toString());
}
});
}