1
我開始學習如何使用SQL數據庫和ContentProviders。我正在開發一個應用程序,它包含一個ListActivity,其中包含一些項目。我知道如何在數據庫中插入新元素,但問題是...從數據庫更新/刪除列表視圖中的元素
當我想更新或刪除一個元素時,我長時間點擊它並在ContextMenu上選擇一個展位選項。
這些更新/通過內容提供商刪除項目的方法:
public void updateTravel(String city, String country, int year, String note, String id {
ContentValues updateValues = new ContentValues();
updateValues.put(Travels.CITY, city);
updateValues.put(Travels.COUNTRY, country);
updateValues.put(Travels.YEAR, year);
updateValues.put(Travels.NOTE, note);
getContentResolver().update(TravelsProvider.CONTENT_URI, updateValues, Travels._ID+"="+id, null);
}
private void deleteTravel(String id){
getContentResolver().delete(TravelsProvider.CONTENT_URI, Travels._ID+"="+id, null);
我不知道這是否是正確的,但我知道我必須通過元素的ID更新或刪除它。我的疑問是,我如何獲得一個物品的ID?
不要傳遞listview項的id。你必須傳遞另一個唯一的值來更新或從數據庫中刪除。 – Andrain
String selectedFromList =(String)(lv.getItemAtPosition(position)); 請在這一行中檢查這個 – dipali
你可以得到字符串的值,然後你可以從這個方法中找到唯一的ID ..但你必須創建getter/setter方法 – dipali