[英]Problems about ListActivity, cursor and SQL data update
目前我正在使用ListActivity。 我使用游標從SQL獲取數據,並根據SQL查詢結果構建ListView。 對於ListView中的每個對象,如果我按下該對象(onListItemClick),它將更改光標將讀取的SQL中的值,並打開一個新的意圖。(按下不同的對象將更改SQL表中的不同值) 。 為了使我的ListView最新,我使用
//adapter is the SimpleCursorAdapter I use
protected void onListItemClick(ListView l, View view, int position, long id) {
super.onListItemClick(l, view, position, id);
//change the data in sql
...
//change the data end
adapter.changeCursor(dbAdapter.getResult(id));
adapter.notifyDataSetChanged();
//create intent here
//startActivity(intent)
}
問題是,如果我一直按下相同的對象,保留它創建的意圖,它工作正常。 但是一旦我離開前一個意圖后我按下了另一個對象,我的ListView就會變空。 例如,如果我按對象a,我輸入意圖a,然后我留下意圖a,回到列表視圖(ListView現在很好),然后我按下對象b,我輸入意圖b。 當我離開意圖b時,ListView變空。 有沒有人對這個問題有任何想法? 謝謝。
聽起來有些數據正在被破壞。 我想如果你將列表創建代碼移動到onResume,你的問題將自行解決,因為每次你回來時都會重新生成列表,而onCreate只會在首次創建活動時完成。
一張圖片勝過千言萬語:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.