我有 2 列,左右各有 10 个按钮。现在,我使用资产文件夹中导入的数据库中的术语将文本设置为每个按钮,然后将它们随机播放。并且用户需要连接正确的术语(例如名字和姓氏)。无论如何,这很好用。这是我的问题:如何在游戏结束时提供正确答案...如何将文本排列到按钮上,使按钮 A1 和 B1 成为一对,A2 和 B2 成为第二对,依此类推?我希望你能理解我……游戏结束了,用户得到了一些正确的答案,有些没有,现在我需要向他展示所有正确的答案。我的数据库中有这样的列:_ID,QUESTION,A1,B1,A2,B2,A3,B3.....A10,B10。这是我为按钮设置问题和术语的代码(我删除了一些代码并放置了点):
public void nextQuestion() {
TestAdapter mDbHelper = new TestAdapter(this);
DataBaseHelper myDbHelper = new DataBaseHelper(this);
if(!myDbHelper.checkDataBase()){
mDbHelper.createDatabase();
}
try{
mDbHelper.open();
Cursor c = mDbHelper.getSpojnice(generateWhereClause());
mAnsweredQuestions.add(c.getLong(0));
ArrayList<MyStruct> labelsA = new ArrayList<MyStruct>();
ArrayList<MyStruct> labelsB = new ArrayList<MyStruct>();
labelsA.add(new MyStruct(c.getString(2), "1"));
labelsB.add(new MyStruct(c.getString(3), "1"));
labelsA.add(new MyStruct(c.getString(4), "2"));
labelsB.add(new MyStruct(c.getString(5), "2"));
labelsA.add(new MyStruct(c.getString(6), "3"));
labelsB.add(new MyStruct(c.getString(7), "3"));
.
.
.
.
Collections.shuffle(labelsA);
Collections.shuffle(labelsB);
pitanje.setText(c.getString(1));
a1.setText(labelsA.get(0).label);
a1.setTag(labelsA.get(0).tag);
a1.setOnClickListener(clickListener);
b1.setText(labelsB.get(0).label);
b1.setTag(labelsB.get(0).tag);
b1.setOnClickListener(clickListener);
a2.setText(labelsA.get(1).label);
a2.setTag(labelsA.get(1).tag);
a2.setOnClickListener(clickListener);
b2.setText(labelsB.get(1).label);
b2.setTag(labelsB.get(1).tag);
b2.setOnClickListener(clickListener);
a3.setText(labelsA.get(2).label);
a3.setTag(labelsA.get(2).tag);
a3.setOnClickListener(clickListener);
b3.setText(labelsB.get(2).label);
b3.setTag(labelsB.get(2).tag);
b3.setOnClickListener(clickListener);
.
.
.
.
.
}
}
finally{
mDbHelper.close();
}