Reputation: 57
attributes of the class supplierClass returns null. Datasnapshot assigns correctly to the attributes. However the list does not provide the right values. only material name works
Code
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view= inflater.inflate(R.layout.fragment_suppliers,container,false);
recyclerView=view.findViewById(R.id.suppliersList);
databaseReference= FirebaseDatabase.getInstance().getReference("suppliers");
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
list= new ArrayList<>();
myAdapter=new recyclerAdapter(getActivity(),list);
recyclerView.setAdapter(myAdapter);
databaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for(DataSnapshot dataSnapshot:snapshot.getChildren())
{
supplierClass sc=dataSnapshot.getValue(supplierClass.class);
list.add(sc);
}
myAdapter.notifyDataSetChanged();
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
return view;
Upvotes: 0
Views: 328
Reputation: 57
attributes names should be same as on firebase DB
String sName, equipmentName, materialName;
public String getsName() {
return sName;
}
public String getEquipmentName() {
return equipmentName;
}
public String getMaterialName() {
return materialName;
}
Upvotes: 1