回答をすべてArrayListに追加し、ランダムを使用してランダムな回答を削除します。以下のJava(コンソール)のコードこれを行う方法を示します。
ArrayList<String> lstAnswers = new ArrayList<String>();
lstAnswers.add("Answer 1");
lstAnswers.add("Answer 2");
lstAnswers.add("Answer 3");
lstAnswers.add("Answer 4");
Random random = new Random();
while (lstAnswers.size() > 0) {
int index = random.nextInt(lstAnswers.size());
String randomAnswer = lstAnswers.remove(index);
System.out.println(randomAnswer);
}
あなたの編集に要求されるように、以下のテキストビューにテキストを割り当てます:
ArrayList<String> lstAnswers = new ArrayList<String>();
lstAnswers.add("Answer 1");
lstAnswers.add("Answer 2");
lstAnswers.add("Answer 3");
lstAnswers.add("Answer 4");
Random random = new Random();
int[] textViews = new int[] { R.id.txt1, R.id.txt2, R.id.txt3, R.id.txt4 };
int textViewIndex = 0;
while (lstAnswers.size() > 0) {
int index = random.nextInt(lstAnswers.size());
String randomAnswer = lstAnswers.remove(index);
((TextView)findViewByid(textViews[textViewIndex])).setText(randomAnswer);
++textViewIndex;
}
あなたが取得したいという事実をランダムな列は、スキーマが正規化されていないことを強く示唆します。 https://en.wikipedia.org/wiki/Database_normalization –
もっと具体的にしましょう。私は、textviews内の事前定義された順序ではなく、各列のデータをディスパッチしたい。正規化とは関係ありません。 – dothedos