Android 从ListView中删除项目表单数据库

Android 从ListView中删除项目表单数据库,android,sqlite,listview,Android,Sqlite,Listview,我浏览了很多问题,但我没有找到,或者只是找到了不具体的答案 所以我得到了一个SQLite数据库,并在ListView中显示它的内容。我提取数据库的内容并将其显示为字符串。现在,如果我单击其中一个项目,我想将其从数据库中删除。所以我发现我必须使用onimclick适配器。但是,如何才能让我单击的项和ListView中字符串后面的对象传递给db以删除它呢 格雷廷 这是我在ListView中显示数据的方法 List<TaskData> TaskList = datasource.get

我浏览了很多问题,但我没有找到,或者只是找到了不具体的答案

所以我得到了一个SQLite数据库,并在ListView中显示它的内容。我提取数据库的内容并将其显示为字符串。现在,如果我单击其中一个项目,我想将其从数据库中删除。所以我发现我必须使用
onimclick
适配器。但是,如何才能让我单击的项和ListView中字符串后面的对象传递给db以删除它呢

格雷廷

这是我在ListView中显示数据的方法

  List<TaskData> TaskList = datasource.getAllTasks();
    //Daten werden im ArrayAdapter gespeichert
    ArrayAdapter<TaskData> TaskListArrayAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_multiple_choice, TaskList);

    ListView TaskDataListView = (ListView) findViewById(R.id.TaskListView);
    TaskDataListView.setAdapter(TaskListArrayAdapter);
    TaskDataListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            datasource.open();
            datasource.deleteTask();
            datasource.close();
        }
    });
}

}在
方法中,单击
位置将是单击项目的位置。这相当于单击的任务列表的索引(元素)

所以您可以使用
long clickedid=TaskList.get(position.getId(),这将检索任务的id

或者假设
deleteTask
方法使用id标识要删除的行,则:-

        datasource.deleteTask(TaskList.get(position).getid());

您可以添加代码吗?帮助我们帮助您使用where子句和可用数据,或使用自定义适配器我添加了代码
        datasource.deleteTask(TaskList.get(position).getid());