数据库中可以用游标找到对应的那一条数据,lietview可以用position得到点击到的item位置
先设置点击事件,点击获得当前item的位置position,用cursor.moveToPosition(int position),把cursor移到数据库中和列表的item相对应的位置,然后索引到他的唯一标识(我这里是id),用id删除这条数据
public int deleteDbByQueryPosition(int query_position){//根据列表点击的行位置删除数据
SQLiteDatabase db=getWritableDatabase();
Cursor queryDelete = db.query(TABLE_NAME_STUDENT, null, null, null, null, null, null);
queryDelete.moveToPosition(query_position);//把游标移到点击的item行数一样的数据库那一行
String ID = queryDelete.getString(queryDelete.getColumnIndexOrThrow("id"));//拿到那一行的id值
return db.delete(TABLE_NAME_STUDENT,"id like ?",new String[]{ID});//返回值是删除的条数
}