在Android中的列表中显示数据库

时间:2011-08-20 11:33:43

标签: android sqlite

我想在Android的列表中显示数据库。我正在使用游标。我正在获取columncount并使用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 :(得分:0)

您似乎丢失了一些代码。你应该编辑你的帖子,我没有特权。列计数将为您提供每行中的列数(字段),如果您正在尝试执行此操作,则不应使用它来遍历游标的记录,您应该使用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());
}