CustomListView使用Firebase单击侦听器

时间:2017-07-17 14:23:25

标签: android listview firebase firebase-realtime-database

onItemclicklistener我遇到了问题。 我从firebase获得了实时数据 我想要的是,获得实时订单,当我点击任何特定订单时,它将转到另一个活动,其中应显示该特定订单的特定详细信息。 我怎么得到这个? Switch Statements在这种情况下不起作用。 我如何获得一些将在数据库中匹配的id,以便我可以获得特定的细节。 我试过这个方法

       myListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
String name=(String)adapterView.getItemAtPosition(i);

                Intent i=new Intent(order.this,details.class);
               i.putExtra("CATEGORY", name);
        startActivity(i);
            }
        });

并在详细课堂上

Intent i = new Intent();
String name=i.getStringExtra("CATEGORY");
databaseReference=FirebaseDatabase.getInstance().getReference(Constans.CATEGORIES).child(name);

但它崩溃了。

2 个答案:

答案 0 :(得分:1)

假设ListView包含订单名称和用户点击的项目name of the order,要获取订单的名称,您需要在onItemClick()内使用此代码方法:

String orderName = (String) adapterView.getItemAtPosition(position);

希望它有所帮助。

答案 1 :(得分:0)

您可以通过firebase通知传递item_id并将其存储在listview adapter中。

稍后,您可以通过输入id将此activity传递给新的extras