我想創建一個ListView使用LoaderCallbacks我能夠看到列表中的所有元素。但是現在我想對它進行排序,因此數據庫中的最新項目是第一項。我在數據庫中有一個名爲COLUMN_MESSAGE_DATE的Coulmn,其中包含一個時間戳,我希望最新的行位於最前面。在onCreateLoader中,當我返回裝入程序時,我按這個Coulmn排序,但最後一行依然在底部。我錯過了什麼?Sort ListView使用LoaderCallbacks <Cursor>日期
public class MessageListFragment extends Fragment implements LoaderCallbacks<Cursor>{
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args)
{
// Create the Cursor that will take care of the data being displayed
Log.d("TAG", "onCreateLoader...");
return new CursorLoader(getActivity(),CONTENT_URI, null, null, null,DataBase.COLUMN_MESSAGE_DATE);//I thought this should sort the list by date...
}
@Override
public void onLoadFinished(Loader<Cursor> arg0, Cursor cursor)
{
// Now Bind the data to the View
Log.d("TAG", "onLoadFinished...ARG1= " + cursor);
mCusrorAdapter = new CustomCursorAdapter(getActivity(), cursor);
mListView.setAdapter(mCusrorAdapter);
}
}
你的ContentProvider查詢方法是否正確地實現了排序順序? – ramaral