Ad
Unable To Get List Of Cities From Firebase
I am trying to get list of cities from Firebase and showing in spinner. But I am getting following error below:
com.google.firebase.database.DatabaseException: Can't convert object of type java.lang.String to type Models.FirebaseCityModel
Database structure:
Below is my code:
dRef.child("Cities").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
List<FirebaseCityModel> cities = new ArrayList<>();
for(DataSnapshot areaSnapshot:dataSnapshot.getChildren()){
FirebaseCityModel areaName = areaSnapshot.getValue(FirebaseCityModel.class);
cities.add(areaName);
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this,R.layout.spinner_city,
R.id.locaions,list);
chooseLocation.setAdapter(adapter);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
TastyToast.makeText(getApplicationContext(),"Unable to fetch locations",TastyToast.LENGTH_SHORT,TastyToast.ERROR).show();
}
});
Someone please let me know what I am doing wrong. Any help would be appreciated.
THANKS
Ad
Answer
Most likely the problem in code is that are making an extra .child()
call. So to solve this, please change the following line of code:
FirebaseCityModel areaName = areaSnapshot.child("city").getValue(FirebaseCityModel.class);
to
FirebaseCityModel areaName = areaSnapshot.getValue(FirebaseCityModel.class);
Ad
source: stackoverflow.com
Related Questions
- → How to update data attribute on Ajax complete
- → October CMS - Radio Button Ajax Click Twice in a Row Causes Content to disappear
- → Octobercms Component Unique id (Twig & Javascript)
- → Passing a JS var from AJAX response to Twig
- → Laravel {!! Form::open() !!} doesn't work within AngularJS
- → DropzoneJS & Laravel - Output form validation errors
- → Import statement and Babel
- → Uncaught TypeError: Cannot read property '__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED' of undefined
- → React-router: Passing props to children
- → ListView.DataSource looping data for React Native
- → Can't test submit handler in React component
- → React + Flux - How to avoid global variable
- → Webpack, React & Babel, not rendering DOM
Ad