相关疑难解决方法(0)

使用SimpleCursorAdapter从Cursor更改值

我有数据库表,列{名称,时间(UTC格式),纬度,经度}

我使用带有SimpleCursorAdapter的ListActivity显示表.

我希望列Time以人类可读格式显示时间(13-07-2010 10:40)而不是UTC格式(18190109089).

如何指定列Time中的值需要一些过滤/适应?

可能的解决方案(有问题):

SimpleCursorAdapter提供的方法:

setCursorToStringConverter(SimpleCursorAdapter.CursorToStringConverter cursorToStringConverter);
Run Code Online (Sandbox Code Playgroud)

指定一个能够将Cursor转换为CharSequence的类(convertToString(Cursor cursor).无论如何我不知道返回CharSequence参数的格式应该是多少!

sqlite android filtering cursor

27
推荐指数
2
解决办法
2万
查看次数

SQLite 更改数据库项目的排序顺序

所以想象一下这是我的数据库的快速模型:

在此处输入图片说明

数据库中的项目按列表呈现给用户,每个列表都显示在一个新片段上,这些片段显示在视图页面上。因此,假设在这种假设情况下,viewpager 上将有两个片段,第一个片段将显示first_list,第二个片段将显示second_list。这是该查询的代码:

 public static Cursor getListItems (final Context context, String listName) {
    if (mDatabase == null || !mDatabase.isOpen())
        open(context);  //This gets the writable db.

    String where = LIST_NAME + " = '" + listName + "'";
    return mDatabase.query(TABLE_LIST_ITEMS, PROJECTION_LIST_ITEMS, 
    where, null, null, null, SORT_ORDER);
}
Run Code Online (Sandbox Code Playgroud)

哪里SORT_ORDERorder_in_list,这个效果很好,与开始。

现在,列表视图可以使用 public library重新排列,它试图允许用户控制每个列表中项目的顺序。这是我遇到问题的地方,没有add(int index, Object object)光标,或者其他一些管理排序的简单方法。我一开始以为我可以简单地调用mDatabase.update()更改值,order_in_list但这有效,但结果并不如预期。例如,用户将第二拖动到位置,请记住:零索引值,我们现在有两个order_in_list为零的项目。虽然我可以叫mDatabase.update()项目一个更新他的位置,一个 …

database sqlite android

2
推荐指数
1
解决办法
2774
查看次数

标签 统计

android ×2

sqlite ×2

cursor ×1

database ×1

filtering ×1