android - 从android中的firebase检索数据(微调器)
问题描述
数据库
我已经在数据库中检索到名称并将其存储在微调器中。我想问的是如何在微调器中选择名称后检索“名称”的“数字”,然后单击按钮后该数字将如何显示在文本视图中?这是我的代码,它不起作用。
private void getNumber(){
mDatabaseRef.child("Drivers' Info").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
String name = postSnapshot.child("name").getValue(String.class);
if (name.equals(sp)) {
String j = (String) postSnapshot.child("number").getValue();
display_number.setTextSize(26);
display_number.setText(j);
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
我的布局
请帮帮我!提前致谢!
解决方案
DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference("SmartDab").child("User");
databaseReference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
List<String > are = new ArrayList<>();
for (DataSnapshot ds : dataSnapshot.getChildren()) {
String userType = ds.child("status").getValue().toString();
switch (userType) {
case "Teacher":
String Name = ds.child("fullname").getValue().toString();
are.add(Name);
break;
}
}
ArrayAdapter<String> areasAdapter = new ArrayAdapter<String>
(giftclass.this, android.R.layout.simple_spinner_item,
are);
areasAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spin.setAdapter(areasAdapter);
spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String selectedItem = spin.getSelectedItem().toString();
Toast.makeText(giftclass.this, "You Select Prof: "+selectedItem, Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
推荐阅读
- python - 在 unix 机器中运行以下代码的问题,但相同的代码在运行 Windows 时工作正常
- java - 休眠条件查询,仅过滤子类权利
- rust - maxminddb-rust,获取特定语言的国家/地区值
- odoo - 跟踪可见性不支持odoo 12中的字段many2many
- apache-spark - 如何获取 SQL 列注释
- azure - 使用 `make-series` 运算符而不定义确切的日期范围
- javascript - 由于设备屏幕宽度,如何从元素中删除 CSS 类?
- c# - 如何在 DotNetBrowser 中完全禁用 WebRTC?
- c++ - 我仍然得到这个错误 undefined reference to: boost::log::v2_mt_posix::trivial::logger::get()
- javascript - 具有多个脚本的 Google 脚本协助