2011-02-17 36 views
0
private void listData() { 

    SimpleCursorAdapter list = new SimpleCursorAdapter(
      this, 
      R.layout.wordsee_row, 
      cursor, 
      new String[] {DBAdapter.KEY_LANG,DBAdapter.KEY_WORD_TH, DBAdapter.KEY_WORD, DBAdapter.KEY_WORD_READING}, 
      new int[] {R.id.lang, R.id.th_word, R.id.word, R.id.reading}); 
    setListAdapter(list); 
    db.close(); 
} 

從每個列表上方包含4個項目(id.lang,id.th_word,id.word,id.reading)如何從列表項中刪除項目?

,我想通過使用主鍵(KEY_WORD_SEE_ID)這樣

刪除它
case DELETE_ID:{ 
      db.open(); 
      db.deleteRecord(DBAdapter.WORDS_SEE_TABLE,DBAdapter.KEY_WORD_SEE_ID,cursor.getLong(cursor.getColumnIndexOrThrow(DBAdapter.KEY_WORD_SEE_ID))); 
      Toast.makeText(getBaseContext(), getString(R.string.save_data), Toast.LENGTH_LONG).show() ; 
      setBinding(); 
      listData(); 

      return true; 
     } 

,這是我的刪除功能

public boolean deleteRecord(String tableName, String indicatorName, 
     long rowId) { 
    return db.delete(tableName, indicatorName + "=" + rowId, null) > 0; 
} 

,但它不工作,沒有任何力量密切

我該怎麼辦?

+0

有沒有錯誤?您也可以嘗試使用log.d` – springrolls 2011-02-17 14:22:27

回答

0

使用重新查詢你的光標.. 這樣cursor.requery();(從數據庫中刪除項目後) 這與項會更新列表中刪除... 如果不列入工作然後用完整的描述後..

+0

進行登錄,按刪除後再次顯示列表,但我刪除的列表再次顯示。 – 2011-02-17 14:35:11