如何获取列表视图项的ID?我正在使用Firebase数据库

时间:2018-09-26 15:20:36

标签: java android firebase firebase-realtime-database

我正在使用此数据库:

I am using this database

这是我的ListView

This is my listview

我将如何从Firebase获取这些项目的ID。假设我单击“电工”按钮,则列表视图将显示最近的可用电工,但是我想通过在以下位置获取列表视图项目的ID来显示工人的全部详细信息。下一个活动。我尝试了以下方法:

 lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
            Intent i = new Intent(available_worker.this,WorkerProfile.class);
            String workerid = FirebaseAuth.getInstance().getUid();

但是我认为它没有得到参考,所以我没有得到ID。 如何解决?

1 个答案:

答案 0 :(得分:0)

有一个非常简单的解决方案。由于您有一个list,因此您可以按照以下代码行添加数据:

  list.add(elec.getFname().toString() + " " + elec.getLname().toString() + "\n" + elec.getAddress().toString());
//  ^

您还应该有一个按键列表。因此,当您遍历DataSnapshot将数据添加到列表中时,在该行代码旁边,还应将密钥添加到另一个列表中,如下所示:

listOfKey.add(ds.getKey());

并在key中获得相应的onItemClick,如下所示:

String key = listOfKey.get(position);