0
Firebaseの情報でRecyclerViewを更新しようとしています。私は正常にFirebaseから私のビュー内のTextViewsを更新することができましたが、そうすることで、私の現在のコードはRecyclerViewのgetChildCount()を無限ループすることなくデータベースからの子供の量で更新しません。FirebaseからgetChildCount()を動的に更新しますか?
私の現在のコード:(CardAdapter.java)
public int getChildCount() {
mDatabase = FirebaseDatabase.getInstance();
mReference = mDatabase.getReference();
final String userID = FirebaseAuth.getInstance().getCurrentUser().getUid();
ValueEventListener listener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot snap :
dataSnapshot.child("pet").child("users").child(userID).getChildren()) {
mChildCount = (int) snap.getChildrenCount();
}
notifyDataSetChanged();
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
};
mReference.addListenerForSingleValueEvent(listener);
return mChildCount;
}
このコードは動作しますが、それは無限にnotifyDataSetChangedに起因してループ();メソッドを呼び出してRecyclerViewを更新します。
RecyclerView getChildCount()が無限にループすることなくFirebaseから動的に更新されるようにするにはどうすればよいですか?
少し微調整して、それはトリックでした!ありがとうございました! –
よろしくお願いいたします。ハッピーコーディング:) – koceeng