-1

很长一段时间以来,我一直在尝试在我的数据库上实现 LongClick,但现在它只是一个简短的点击。我正在用 android 编写,我有一个数据库,我正试图从中删除记录。到目前为止,这是我的代码,

protected void onListItemClick(ListView l, View v, int position, long id) {
    @SuppressWarnings("unchecked")
    //THIS IS TO DELETE FROM DATABASE, NEED TO IMPLEMENT LONGCLICK
    Vehicle toDelete = ((ArrayAdapter<Vehicle>) l.getAdapter()).getItem(position);
    VehicleDataSource vds = new VehicleDataSource(this);
    vds.deleteVehicle(toDelete);
    getLoaderManager().restartLoader(0, null, this);

}

这是我的 VehicleDataSource 类中的删除车辆方法,

  public synchronized void deleteVehicle(Vehicle v) throws SQLException {
      SQLiteDatabase db = dbHelper.getWritableDatabase();
      db.delete(MySQLiteHelper.TABLE_VEHICLE, 
              MySQLiteHelper.COLUMN_ID + " = ?", new String[] {v.getId() + ""});
  }

如果有人能给我任何提示或任何帮助,将不胜感激。谢谢。

4

1 回答 1

0

ListView上设置OnItemLongClickListener ,然后在 on方法中处理与所选视图的交互。可能值得查看有关处理输入事件的文档。boolean onItemLongClick (AdapterView<?> parent, View view, int position, long id)

于 2014-02-21T15:13:32.593 回答