I am trying to retrieve data from firebase and display it on my listview using firebase-ui. The code runs fine but nothing is displayed on the list view. This is what I get from my logs:
W/ClassMapper: No setter/field for -KNRXdDOlA9nV6qxXvOl found on class com.example.sammie.coreteccontacts.Sacco
Here is my FirebaselistAdapter
DatabaseReference mDatabaseReference = FirebaseDatabase.getInstance().getReference();
FirebaseListAdapter<Sacco> adapter = new FirebaseListAdapter<Sacco>(getActivity(), Sacco.class, android.R.layout.simple_list_item_1, mDatabaseReference) {
@Override
protected void populateView(View view, Sacco sacco, int i) {
((TextView)view.findViewById(android.R.id.text1)).setText(Sacco.getName());
}
};
contactList.setAdapter(adapter);
Here is my Sacco class:
package com.example.sammie.coreteccontacts;
public class Sacco {
String description;
String location;
static String name;
public Sacco() {
}
public Sacco(String description, String location, String name) {
this.name = name;
this.description = description;
this.location = location;
}
public static String getName() {
return name;
}
public String getDescription() {
return description;
}
public String getLocation() {
return location;
}
}
Here is a sample of the data from firebase
KNRWnG6BTkbGJQJVq9Qaddclose
description:"test description"
location: "test location"
name: "test name"
There are no setter methods in your class.
BUT
This is a unique key which is to be obtained as an object containing your description, location and name.
This shows that there is an error with your database listener's positioning. It is reading
-KNRWnG6BTkbGJQJVq9Qaddclose
as a variable to your Sacco class instead of an object of it.Please check the JSON file and DatabaseReference. Most probably it should be like this:
You have to get reference to your node: