我有一个从SQL数据库填充的列表视图。我正在使用以下onlick代码来检测何时选择一个单元格:
ListView yourList = (ListView) findViewById(android.R.id.list);
yourList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
Log.e("onClick",""+arg2);
}
});
目前这段代码告诉我点击了哪一行。然而,我想要捕获的是来自数据库的名为_ID的字段。项目在列表视图中显示的顺序与它们在数据库中的顺序不同,因为我已经在我的应用程序代码中对它们进行了排序。
有人可以帮忙吗?
编辑我知道我可以使用arg3 - 但是每行返回0。我该如何纠正?答案 0 :(得分:1)
id包含在回调中。如果查看documentation of the OnItemClickListener,方法签名为:
public abstract void onItemClick (
AdapterView<?> parent, View view, int position, long id)
注意示例中的'id'字段是'arg3'。这是您要查找的数据库中的“_id”字段。