det finns fler metoder för att lösa ditt problem:
- kör sql-satsen (utan begränsning) i början och flytta till nästa post på markören när en fråga är korrekt besvarad
- buffra frågorna som redan har besvarats
det andra tillvägagångssättet skulle kunna göras på följande sätt:
först, ändra din metod och SQL, inklusive en where-klausul:
public Cursor getTestData(String whereClause)
{;
try
{
String sql ="SELECT * FROM tblPitanja WHERE 1 = 1 " + whereClause + " ORDER BY RANDOM() LIMIT 1";
[...]
för det andra, buffra de redan besvarade frågorna i din spelklass:
lägg till en länkad lista till din spelklass
LinkedList<Long> mAnsweredQuestions = new LinkedList<Long>();
lägg till redan besvarade frågor till den länkade listan:
Cursor c = mDbHelper.getTestData(generateWhereClause());
mAnsweredQuestions.add(c.getLong(0));
List<Answer> labels = new ArrayList<Answer>();
[...]
lägg till en funktion som genererar where-satsen:
private String generateWhereClause(){
StringBuilder result = new StringBuilder();
for (Long l : mAnsweredQuestions){
result.append(" AND " + YOURID + " <> " + l);
}
return result.toString();
}