0
我试图从图中所示的数据库中读取数据。当只有一个孩子延伸时(餐馆小孩),我可以很好地读取数据。但是,当我添加了另一个孩子(评论)时,**所显示的代码无法再读取数据库,只是显示空白。餐厅类只包含getter和setter。有没有人有我的解决方案,让我只能从这段代码中读取“餐厅路径”? (我的其他代码这里没有显示会阅读评论道)从多个子路径的Firebase数据库读取数据
Data from firebase database here
public class Info extends Fragment {
private DatabaseReference mDatabase;
private FirebaseAuth firebaseAuth;
String userID;
private TextView resNameChange, statusChange;
public Info() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View rootView = inflater.inflate(R.layout.fragment_info, container, false);
mDatabase = FirebaseDatabase.getInstance().getReference();
firebaseAuth = FirebaseAuth.getInstance();
FirebaseUser user = firebaseAuth.getCurrentUser();
userID = user.getUid();
resNameChange = rootView.findViewById(R.id.resNameChange);
statusChange = rootView.findViewById(R.id.statusChange);
mDatabase.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
showData(dataSnapshot);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
return rootView;
}
public void showData(DataSnapshot dataSnapshot) {
for (DataSnapshot ds : dataSnapshot.getChildren()) {
RestaurantInformation resInfo = new RestaurantInformation();
//****** CODE THAT READS THE PATH AND GET THE DATA *******
resInfo.setResName(ds.child(userID).getValue(RestaurantInformation.class).getResName());
resInfo.setStatus(ds.child(userID).getValue(RestaurantInformation.class).getStatus());
//**********************************************************
resNameChange.setText(resInfo.getResName());
statusChange.setText(resInfo.getStatus());
}
}
}
HMM ..似乎没有工作@亚马逊Mamo – ben
什么是错误? –
没关系,我没有试图用这段代码读取数据库,而是改变了我的数据库的结构以便更容易阅读。无论如何感谢您的帮助。 – ben