mam kursor zainicjowany w następujący sposób:Błąd: Upewnij się, że kursor został poprawnie zainicjowany przed uzyskaniem dostępu do danych z niego?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//...Code, code, code...
c = db.query("US_States", null, null, null, null, null, null, null);
}
Sam kursor jest używany w osobnej metody w tej samej działalności:
public void GameStart()
{
int gameCount = 0;
while(gameCount < 5)
{
cursorEntry = new Random().nextInt(c.getCount());
c.moveToPosition(cursorEntry);
cursorState = c.getString(1);
cursorCapital = c.getString(2);
displayText.setText(cursorState);
Daje mi następujący błąd:
E/CursorWindow﹕ Failed to read row 20, column 2 from a CursorWindow which has 50 rows, 2 columns.
Ze śledzeniem stosu wskazującym na tę linię cursorCapital = c.getString(2);
za każdym razem, gdy ponownie uruchomię aplikację. Zawsze daje tam błąd.
Something bazie tak:
State|Capital
Alabama|Montgomery
Alaska|Juneau
Arizona|Phoenix
...The rest of the states
Czytałem kilka podobnych stanowisk na SO, ale nie dali mi pomysł co jest nie tak. Dowolne wejście jest doceniane.
To rozwiązać mój problem. Dzięki. Nie wiedziałem, że liczy kolumny od 0. – user3081519
welcome @ user3081519, cieszę się, że mogę pomóc –