Я использую цикл while, чтобы перебрать курсор, а затем вывести значения долготы и широты каждой точки в базе данных.
По некоторым причинам он не возвращает последний (или первый, в зависимости от того, использую ли я Cursor.MoveToLast) набор значений долготы и широты в курсоре.
Вот мой код:
public void loadTrack() {
SQLiteDatabase db1 = waypoints.getWritableDatabase();
Cursor trackCursor = db1.query(TABLE_NAME, FROM, "trackidfk=1", null, null, null,ORDER_BY);
trackCursor.moveToFirst();
while (trackCursor.moveToNext()) {
Double lat = trackCursor.getDouble(2);
Double lon = trackCursor.getDouble(1);
//overlay.addGeoPoint( new GeoPoint( (int)(lat*1E6), (int)(lon*1E6)));
System.out.println(lon);
System.out.println(lat);
}
}
От этого я получаю:
04-02 15: 39: 07.416: INFO / System.out (10551): 3,0
04-02 15: 39: 07.416: INFO / System.out (10551): 5,0
04-02 15: 39: 07.416: INFO / System.out (10551): 4,0
04-02 15: 39: 07.416: INFO / System.out (10551): 5,0
04-02 15: 39: 07.416: INFO / System.out (10551): 5,0
04-02 15: 39: 07.416: INFO / System.out (10551): 5,0
04-02 15: 39: 07.416: INFO / System.out (10551): 4,0
04-02 15: 39: 07.416: INFO / System.out (10551): 4,0
04-02 15: 39: 07.416: INFO / System.out (10551): 3,0
04-02 15: 39: 07.416: INFO / System.out (10551): 3,0
04-02 15: 39: 07.416: INFO / System.out (10551): 2.0
04-02 15: 39: 07.416: INFO / System.out (10551): 2.0
04-02 15: 39: 07.493: INFO / System.out (10551): 1,0
04-02 15: 39: 07.493: INFO / System.out (10551): 1,0
7 Наборов значений, где я должен получить 8 наборов.
Спасибо.