update recuperar query guardar example datos consultas child android listview firebase firebase-database firebaseui

recuperar - query firebase android



Sin setter/campo para intentar llenar una vista de lista en firebase (2)

Intento recuperar datos de firebase y mostrarlos en mi lista de lista usando firebase-ui. El código funciona bien, pero no se muestra nada en la vista de lista. Esto es lo que obtengo de mis registros:

W / ClassMapper: No se encontró ningún setter / field para -KNRXdDOlA9nV6qxXvOl en la clase com.example.sammie.coreteccontacts.Sacco

Aquí está mi 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);

Aquí está mi clase Sacco:

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; } }

Aquí hay una muestra de los datos de firebase

KNRWnG6BTkbGJQJVq9Qaddclose

descripción: "descripción de la prueba"

ubicación: "ubicación de la prueba"

nombre: "nombre de la prueba"


No hay métodos setter en tu clase.

public void setName(String name) { this.name = name; } public void setDescription(String description) { this.description = description; } public void setLocation(String location) { this.location = location; }

PERO

-KNRWnG6BTkbGJQJVq9Qaddclose

Esta es una clave única que debe obtenerse como un objeto que contiene su descripción, ubicación y nombre.

W / ClassMapper: No se encontró ningún setter / field para -KNRXdDOlA9nV6qxXvOl en la clase com.example.sammie.coreteccontacts.Sacco

Esto muestra que hay un error con el posicionamiento de su oyente de base de datos. Está leyendo -KNRWnG6BTkbGJQJVq9Qaddclose como una variable para su clase Sacco en lugar de un objeto de la misma.

Verifique el archivo JSON y DatabaseReference. Lo más probable es que debería ser así:

  • UnderChilds <----- (EN NIÑO OÍDO).
    • -KNRWnG6BTkbGJQJVq9Qaddclose
    • -KNRWnSYnuojkbGJQJVq9Qaddclos

Debe obtener referencia de su nodo: DatabaseReference mDatabaseReference = FirebaseDatabase.getInstance (). GetReference (). Child ("Su nombre de nodo");