mMessages
- это метод. У меня есть таблица SQLite, и каждый раз, когда приходит новое сообщение, я хочу добавить +1 к столбцу. Это то, что делает метод mMessages()
, но вместо добавления +1 каждый раз, когда добавляется новый дочерний элемент, он добавляет все существующие дочерние элементы каждый раз, когда я открываю упражнение.
Скажем, поддержка в таблице, значение равно 10, и у меня есть 5 детей в RecyclerView
, и я открываю его, и еще до того, как я получу нового ребенка, в таблицу добавляется +5, потому что есть 5 существующих детей ,
Я не хочу, чтобы это произошло, но я хочу, чтобы +1 добавлялся только при добавлении нового дочернего элемента. Как мне этого добиться?
@Override
protected void onBindViewHolder(@NonNull final Chat.MessagesViewHolder holder, final int position, @NonNull final MessagesHelper model) {
holder.setMessage(model.getMessage());
final String userId = getRef(position).getKey();
final DatabaseReference mTimeReference = FirebaseDatabase.getInstance().getReference().child("Messages").child(MessageSenderId).child(MessageRecieverId);
Query messageQuery = mTimeReference.limitToLast(10);
messageQuery.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
MessagesHelper message = dataSnapshot.getValue(MessagesHelper.class);
mMessages();
}
@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) {
}
});