Voici mon code de classe de l'adaptateur:
override fun onStop() { adapter!!.stopListening() super.onStop() } //Retrieves data from Firestore and assigns the retrieved data to the search People Adapter private fun retrieveDataFromFirestore(searchQuery : String) { mFirestore = FirebaseFirestore.getInstance() //Assigns the Collection Name from which needs to be queried //the where conditions ensure to query a userDocument whose userName starts with the query entered in the searchField val userNameQuery = mFirestore.collection(CompanionObjects.USERS_COLLECTION_NAME) .whereGreaterThanOrEqualTo("userName", searchQuery) .whereLessThanOrEqualTo("userName", "$searchQuery\uF7FF") //Assigns the query to the User Objects that are related to Firestore users = FirestoreRecyclerOptions.Builder<User>() .setQuery(userNameQuery, User::class.java) .build() //Assigns the Firestore queried data to the search People Adapter adapter = SearchPeopleAdapter(users!!) registerAdapterObserver() adapter!!.firestoreRecyclerAdapter(users!!) adapter!!.startListening() search_people_list.setHasFixedSize(true) search_people_list.hasFixedSize() search_people_list.layoutManager = LinearLayoutManager(this) search_people_list.adapter = adapter persistSearchQueryString(searchQuery) }
3 Réponses :
S'il vous plaît assurez-vous que
in Alors, n'oubliez pas d'appeler p> Votre code pourrait ressembler à ceci: p> < Pré> xxx pré> p> FUN RÉSULTAFROMFIREESTORETORE (RECHERCHEURY: String) CODE> Après avoir ajouté des éléments dans
Adaptateur !!. FirestorerecyCleradapter (utilisateurs !!) code>, vous n'êtes pas notifier > recyclerview strong> à mettre à jour.
Toujours ne fonctionne pas, il retourne 0 même après avoir ajouté notifyDatastetchangeed ()
Assurez-vous simplement en Fun Firestorerecycycleradapter Code>
Utilisateur !!. Snapshots CODE> Aux éléments et le nombre n'est pas zéro
Il retourne, je peux voir que le recyclisteview bein est renseigné avec des données, mais l'élémentCompte dit 0. J'essaie la méthode de RegistaDapterDaObserver, mais qui ne fonctionne que s'il y a des articles lorsqu'ils sont des requêtes, je voudrais savoir quand la requête retourne 0 afin que je puisse montrer Un texte qui dit "ne pouvait rien trouver", etc. à l'utilisateur .....
OK j'ai résolu ceci, voici le code: } p> donc, ce que j'ai fait a été rendu la classe de l'adaptateur ouverte, puis a créé une instance de la Adaptateur dans l'activité et appelé méthode OndataChanged () dans l'activité qui surveille pour l'élémentCompte dans l'adaptateur. De cette façon, je suis capable de récupérer la valeur adaptercount correcte. P> p>