Отображение базы данных в списке в Android - PullRequest
0 голосов
/ 20 августа 2011

Я хочу отобразить базу данных в виде списка в Android.Я использую курсоры для этого.Я получаю количество столбцов и с помощью цикла for перемещаю курсор.Но база данных не отображается.Пожалуйста помоги.Вот мой код:

List<String> s;
Cursor c = db.query(Geo_Create_Table, new String[] { lat + "", lon + "", result1 }, null, null, null, null, null);
c.moveToFirst();
int count = c.getColumnCount();
for (int i = 0; i < count; i++)
{
    c.moveToNext();
}

Пожалуйста, дайте мне знать, если есть какой-либо другой более простой подход.

1 Ответ

0 голосов
/ 20 августа 2011

Вы, кажется, потеряли часть своего кода там.Вы должны отредактировать свой пост, у меня нет привилегий.Счетчик столбцов даст вам количество столбцов (полей) в каждой строке, и его не следует использовать для циклического перемещения по записям курсора, если это то, что вы пытаетесь сделать, вам, вероятно, следует использовать метод getCount().

List<String> s;
Cursor c=db.query(Geo_Create_Table, new String[]{lat+"",lon+"",result1}, null,null, null, null, null);
c.moveToFirst();
int count=c.getCount();
for(int i=0; i < count; i++)
{
    ....
    c.moveToNext();
}

Кроме того, в моем коде ниже вы запрашиваете moveToFirst (), если это возвращает true, это означает, что есть записи, которые нужно пройти.Я использую цикл do / while для перемещения по каждой записи (примечание: c.moveToNext ()).

List s; 
Cursor c=db.query(Geo_Create_Table, new String[]{lat+"",lon+"",result1}, null,null, null, null, null); 
if (c.moveToFirst()) {
    do
    {
        ...
        c.moveToNext();
    }
    while (!c.isAfterLast());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...