1

我在我的列表视图中实现了一个 onitemclicklistener(),它显示了我所有的数据库信息

onitemclick((AdapterView<?> parent, View viewClicked, int position,
                    long bezoeknummer)

显示的代码片段返回我该特定数据库行的第一列值。

我怎样才能让它返回该数据库行的第二列?

我已经尝试让我的游标查询将所需的(第二列值)读取为 _id 而不是我的第一行值,但随后我的程序崩溃了

编辑,

我有以下 onitemclick 代码

private void herkenlijstklik() {
    ListView bezoelijst = (ListView) findViewById(R.id.listViewAbezoe); 
    bezoelijst.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View viewClicked, int position,
                long bezoeknummer) {
            Log.i("herkenlijstklik", "nummer gepaseerd door onitemclick, zou moeten hetzelfde zijn als bezoeknummer = " + bezoeknummer);

        }
    });

我的列表视图的光标在我的数据库中形成如下所示

public Cursor leesallegegevens() {
            String waar = null;
            Cursor c =  onzedatabase.query(true, databasetabel, allekolommen, 
                                waar, null, null, null, null, null);
            if (c != null) {
                c.moveToFirst();
            }
            Log.i("cursor leesallegegevens", c.toString());
            return c;
        }

再次问我的问题:

我的数据库存在多列,函数 Onitemclick() 返回我该数据库的第一列,我的变量称为 long bezoeknummer 返回在第二列

如代码所示,我在 logcat 中没有任何错误,只返回了错误的值

请帮助我如何返回所需的值,如有必要,请随时提出更多问题

4

1 回答 1

0

很久以前,我同时解决了这个问题。我记得我将要读取的变量放在适配器查询的首位所以:首先我有字符串 [] allekolommen = (recnum, bezoeknummer, ....)

将其更改为: string [] allekolommen = (bezoeknummer, recnum,....) 一切都对我有用

Ps:不再完全确定这是否是完整的解决方案

于 2013-12-14T00:15:30.440 回答