0
如何在Sqlite Database.My中的更新數據在Fragment代碼正常工作後更新ListFragment,如何更新此列表片段?如何在Sqlite數據庫中更新數據時更新ListFragment
public class MyMasterFragment extends SherlockListFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/*
Runnable mRunnable=new Runnable() {
public void run() {
Log.i("mylog", "refreshing...");
ListAdapter myListAdapter = getMyListAdapter();
setListAdapter(myListAdapter);
Log.i("mylog", "list Updated");
mHandler.postDelayed(this, 60*1000);
}
};
mHandler.postDelayed(mRunnable, 0);
*/
ListAdapter myListAdapter = getMyListAdapter();
setListAdapter(myListAdapter);
}
private ListAdapter getMyListAdapter() {
DBHelper dbHelper=new DBHelper(getActivity().getApplicationContext());
SQLiteDatabase myDB = dbHelper.getWritableDatabase();
ListAdapter adapter = null ;
String TIME_SORT_ORDER=DBConstants.TIME+" DESC";
String[] mycolumns={DBConstants.SNO,DBConstants.MYSYMBOL,DBConstants.VALUE1,DBConstants.DATE,DBConstants.TIME,DBConstants.VALUE2,DBConstants.VALUE3,DBConstants.VALUE4,DBConstants.VALUE5,DBConstants.VALUE6};
Cursor c1 = myDB.query(DBConstants.LATEST_MY_DATA_TABLE,mycolumns, null, null, null, null, TIME_SORT_ORDER);
if(c1.getCount()>0)
{
adapter=new SimpleCursorAdapter(getActivity().getApplicationContext(), R.layout.live_list_item, c1, new String[] {DBConstants.MYSYMBOL,DBConstants.VALUE1,DBConstants.VALUE2,DBConstants.DATE,DBConstants.TIME}, new int[] {R.id.mysymbol, R.id.value1,R.id.value2,R.id.ldate,R.id.ltime});
}
myDB.close();
dbHelper.close();
return adapter;
}
}
另外我已經研究了Android文檔中的Loader Manager。
- 如果我使用loader manager它會自動更新我的片段列表,只要數據在我的數據庫中更新?
- 我可以使用支持庫在Pre-honeycomb versionz上使用Loader管理器嗎?
取決於誰更新數據,它是你自己的應用程序? –
從我自己的應用程序sqlite DB – Ramprasad
是的,那麼只要你更新數據,你就可以觸發'getLoaderManager.initLoader()'。 –