【发布时间】:2020-07-25 05:59:17
【问题描述】:
在应用程序中,我有一个微调器,微调器有一些选项,并且此选项存储在 firebase 中,该选项显示正常,但是当我单击微调器项目时,它会在数据库中的 textview 中显示一些字符串。但它什么也没显示。假设我有两个数据,第一个是名称,第二个是年龄,我在微调器项目中显示名称,当我单击微调器时,它会在 textview 中显示年龄
list = new ArrayList<>();
retriveData();
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int position, long l) {
String selected = list.get(position).toString();
Log.e("Clicked:",""+selected);
reference.child("result").child(selected).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for (DataSnapshot ds : snapshot.getChildren()) {
String fAge = ds.child("age").getValue(String.class);
tv_1st.setText(fAge);
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
}
public void retriveData() {
reference.child("result").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
list.clear();
for (DataSnapshot item : snapshot.getChildren()) {
list.add(item.child("name").getValue().toString());
}
adapter = new ArrayAdapter<String>(MainActivity.this, R.layout.spinner_style, list);
Collections.reverse(list);
spinner.setAdapter(adapter);
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
}
我的数据库结构
如何在 textview 中显示这些数据?
【问题讨论】:
标签: android firebase firebase-realtime-database