[英]Android studio firebase database retrieve child value for multiple childs
[英]android studio only checks and retrieve the last added value in firebase database
我正在尝试创建一个应用程序,我需要从 firebase 数据库中获取 WC 的可用性,但问题是 android studio 只检查最后添加的项目,并为我带来它的状态,
这是我的代码
DatabaseReference myRef = FirebaseDatabase.getInstance().getReference().child("Bathrooms");
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull final DataSnapshot dataSnapshot) {
for ( DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
Bathrooms bathrooms = dataSnapshot1.getValue(Bathrooms.class);
bathroomsArrayList.add(bathrooms);
}
Browse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(bathrooms.getAvailability().equals("Yes")&&bathrooms.getFloor().equals(Floor.getSelectedItem())&&bathrooms.getSection().equals(Section.getSelectedItem())){
disable.setChecked(true);
Toast.makeText(getActivity(), "Browse done successfully", Toast.LENGTH_SHORT).show();
}
else {
disable.setChecked(false);
Toast.makeText(getActivity(), "No bathrooms", Toast.LENGTH_SHORT).show();
}
}
});
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Toast.makeText(getActivity(), "Opsss.... Something is wrong", Toast.LENGTH_SHORT).show();
}
});
返回根视图;
}
这是数据所在的火力基地的图片
我没有使用阵列适配器,因为我希望数据不断更新,因为我将使用传感器。
这项工作为您替换用户白名数据库头
myRef = FirebaseDatabase.getInstance().getReference().child("users");
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
Log.d("rrr", "onDataChange0: ");
for (DataSnapshot dataSnapshot:snapshot.getChildren())
Log.d("rrr", "onDataChange: "+dataSnapshot.getValue().toString());
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.