Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

176
Vistas
Android Firebase obteniendo error de datos

cada vez que trato de obtener datos de Firebase Motel by Motel, simplemente no funciona, pero cuando intento obtener solo una cadena, ¡funciona bien! No sé dónde está el problema, este es el código ChildEventListener:

 refe.addChildEventListener(new ChildEventListener() { @Override public void onChildAdded(DataSnapshot dataSnapshot, String s) { motels.clear(); for(DataSnapshot snapshot : snap.getChildren()) { Motel motel = snap.getValue(Motel.class); motels.add(motel); } adapter.notifyDataSetChanged(); } @Override public void onChildChanged(DataSnapshot dataSnapshot, String s) { } @Override public void onChildRemoved(DataSnapshot dataSnapshot) { } @Override public void onChildMoved(DataSnapshot dataSnapshot, String s) { } @Override public void onCancelled(DatabaseError databaseError) { } });

y el código de clase del motel:

 public class Motel { private String name,adresse,price; private Long stars; private Long chambers; private String region; public Motel(String name, Long chambers,String adresse, String price, String region,Long stars ) { this.name=name; this.adresse=adresse; this.price=price; this.stars=stars; this.chambers=chambers; this.region=region; } public String getRegion() { return region; } public void setRegion(String region) { this.region = region; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Long getChambers() { return chambers; } public void setChambers(Long chambers) { this.chambers = chambers; }

por favor ayudame !! parece que no puedo entender cuál es el problema

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Debería publicar el registro para que podamos ver el problema, pero creo que ya sé lo que está sucediendo.

El método que reúne todos los elementos es OnDataChange de ValueEventListener , mientras onChildAdded de ChildEventListener solo toma 1 a la vez y se ejecuta todas las veces que sea necesario.

Cambio

 motels.clear(); for(DataSnapshot snapshot : snap.getChildren()) { Motel motel = snap.getValue(Motel.class); motels.add(motel); } adapter.notifyDataSetChanged();

Para

 motels.clear(); Motel motel = dataSnapshot.getValue(Motel.class); motels.add(motel); adapter.notifyDataSetChanged();
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda