我有一个片段,它使用数据库中的customAdapter显示列表视图。在工具栏上我有一个排序选项,工作正常。我想要的只是在我重新打开我的应用程序时保留排序顺序。
我尝试使用共享首选项来存储排序顺序名称(如在升序/降序/日期中排序),然后将适配器设置为列表视图,但它不起作用。
我的onCreateView():
SharedPreferences preference =PreferenceManager.getDefaultSharedPreferences(getContext());
String sortval = preference.getString("Sort","Header");
handler = new NotesHandler(getContext());
list = handler.sortBy(sortval);
adapter = new CustomAdapter(getContext(), list);
listView.setAdapter(adapter);
NotesHandler.java:
public ArrayList<Notes> sortBy(String sortField)
{
SQLiteDatabase db = this.getReadableDatabase();
Cursor c = db.rawQuery("select * from "+TABLE_NAME+" order by "+sortField+";",null);
ArrayList<Notes> n = new ArrayList<>();
if(c!= null && c.getCount()!=0)
{
if(c.moveToFirst())
{
do{
Notes note = new Notes(c.getString(0),c.getString(1),c.getString(2),c.getString(3),c.getString(4),c.getString(5));
n.add(note);
}while(c.moveToNext());
}
}
db.close();
return n;
}
请帮助。