Java 如何从listview获取所选值

Java 如何从listview获取所选值,java,android,firebase,listview,firebase-realtime-database,Java,Android,Firebase,Listview,Firebase Realtime Database,我想选择财务名称,点击财务名称后,我想得到相同财务的代码。财务名称将列在listview中 我的Firebase数据库结构如下: financeRef.addListenerForSingleValueEvent(新的ValueEventListener()值){ @凌驾 public void onDataChange(@NonNull DataSnapshot DataSnapshot){ 对于(DataSnapshot快照:DataSnapshot.getChildren()){ //映

我想选择财务名称,点击财务名称后,我想得到相同财务的代码。财务名称将列在listview中

我的Firebase数据库结构如下:

financeRef.addListenerForSingleValueEvent(新的ValueEventListener()值){
@凌驾
public void onDataChange(@NonNull DataSnapshot DataSnapshot){
对于(DataSnapshot快照:DataSnapshot.getChildren()){
//映射数据=(映射)snapshot.getValue();
String value=new Gson().toJson(snapshot.getValue());
progressBar.setVisibility(View.GONE);
试一试{
JSONObject对象=新的JSONObject(String.valueOf(value));
f=object.getString(“财务名称”);
name=snapshot.getKey();
}捕获(JSONException e){
e、 printStackTrace();
}
财务名称。添加(f);
adapter.notifyDataSetChanged();
}
setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
意向意向=新意向(FinanceNameListActivity.this、CodeAndNameActivity.class);
字符串abc=(字符串)((TextView)视图).getText();
意向。额外(“名称”,abc);
星触觉(意向);
完成();
}
});
}
@凌驾
已取消的公共void(@NonNull DatabaseError DatabaseError){
}
});

从firebase获取响应并将其设置为model call或hashmap或array(取决于您),然后使用设置firebase响应的位置获取位置并获取值来实现列表视图单击事件或简单单击事件的接口。

从firebase获取响应并将其设置为model call或hashmap或array(取决于您),然后实现接口对于列表视图,单击事件或简单单击事件,从您设置firebase响应的位置获取位置和值。

从公共窗口单击(AdapterView父项、视图、int位置、长id)我可以获得相同的财务名称,但无法获得代码我不知道如何从相同的财务名称进行检查。在数组中设置财务代码,就像设置财务名称一样。获取相同职位的财务代码,就像财务名称一样。如果有人点击了finance name,然后在下一页我想在put extra中输入相同的代码,并比较if(code.equals(editextcode))和验证过程是否成功;添加(您的参数名称);意向。额外(“名称”,abc);intent.putExtra(“代码”,financecode.get(position)):startActivity(intent);finish();}});从公共窗口单击(AdapterView父对象、视图、int位置、长id)我可以获得相同的财务名称,但无法获得代码我不知道如何从相同的财务名称进行检查。在数组中设置财务代码,就像设置财务名称一样。获取相同职位的财务代码,就像财务名称一样。如果有人点击了finance name,然后在下一页我想在put extra中输入相同的代码,并比较if(code.equals(editextcode))和验证过程是否成功;添加(您的参数名称);意向。额外(“名称”,abc);intent.putExtra(“代码”,financecode.get(position)):startActivity(intent);finish();}});
financeRef.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

        for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
            //Map<String, Object> data = (Map<String, Object>) snapshot.getValue();
            String value = new Gson().toJson(snapshot.getValue());
            progressBar.setVisibility(View.GONE);

        try {
            JSONObject object = new JSONObject(String.valueOf(value));
            f = object.getString("Finance Name");
            name = snapshot.getKey();
        } catch (JSONException e) {
            e.printStackTrace();
        }


            financeName.add(f);
            adapter.notifyDataSetChanged();
        }
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                Intent intent = new Intent(FinanceNameListActivity.this, CodeAndNameActivity.class);
                String abc = (String) ((TextView) view).getText();
                intent.putExtra("Name",abc);
                startActivity(intent);
                finish();
            }
        });

    }

    @Override
    public void onCancelled(@NonNull DatabaseError databaseError) {

    }

});