【发布时间】:2016-08-09 09:31:25
【问题描述】:
我仍然是 android 开发的新手,我的 ToDo 应用程序有问题。
目前我的列表视图显示所有已保存的待办事项仅按日期的前两位数字(天数!)排序,但日期以这种格式存储:“dd.mm.yyyy”
我的目标是按日期 (ToDoTable.COLUMN_TODO_START) 和时间 (ToDoTable.COLUMN_TIME_START) 升序对列表视图进行排序。
我目前使用以下代码:
public void fillData() {
String[] from = new String[] { ToDoTable.COLUMN_TODO_NAME, ToDoTable.COLUMN_TODO_PLACE, ToDoTable.COLUMN_TODO_START, ToDoTable.COLUMN_TODO_END };
int[] to = new int[] { R.id.todo_name, R.id.todo_place, R.id.todo_start };
getLoaderManager().initLoader(0, null, this);
adapter = new SimpleCursorAdapter(this, R.layout.todo_row_test2, null, from,
to, 0);
setListAdapter(adapter);
}
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
String[] projection = { ToDoTable.COLUMN_ID, ToDoTable.COLUMN_TODO_NAME, ToDoTable.COLUMN_TODO_PLACE, ToDoTable.COLUMN_TODO_START, ToDoTable.COLUMN_TIME_START, ToDoTable.COLUMN_TODO_END, };
CursorLoader cursorLoader = new CursorLoader(this,
DataContentProvider.CONTENT_URI, projection, null, null, ToDoTable.COLUMN_TODO_START + " ASC" );
return cursorLoader;
}
如果有人能帮助我解决这个问题,尤其是在按两个标准(日期和时间)对列表进行排序方面,我将不胜感激。
提前致谢。
【问题讨论】:
-
将您的 Date 对象转换为 Long 。然后比较日期并对其进行排序。检查这个 - stackoverflow.com/questions/12473550/…
-
是否可以将它与我的半工作 ToDoTable.COLUMN_TODO_START + "ASC" 部分集成到代码中?
标签: android sorting date listview android-contentprovider