首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Android ListView 動態更新:CursorAdapter 需重新查詢配合 notifyDataSetChanged

     編輯:程式設計疑難解答

場景

長按 ListView 項目刪除 SQLite 數據後,ListView 不刷新。使用的是 SimpleCursorAdapter。

關鍵代碼

// 刪除數據庫記錄後
mDataBase.execSQL("delete from finance where _id=" + cc);

// 必須兩步:
cursor.requery();              // 1. 重新查詢獲取最新 Cursor
adapter.notifyDataSetChanged();// 2. 通知適配器數據變更

僅調用 notifyDataSetChanged() 無效,因 Cursor 仍指向舊數據集。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved