向上或向下滚动后,项目在recyclerView中放错了位置



我正在开发一个聊天应用程序。我正在从firebase获取信息。在向上/向下滚动之前,会准确放置消息。但当我滚动时,所有的项目都放错了地方。

这是我的OnBindViewHolder

public void onBindViewHolder(final MessageViewHolder viewHolder, int i) {
String senderId=mAuth.getCurrentUser().getUid();
Messages messages=mMessageList.get(i);
String fromUserId=messages.getFrom();
String fromMessageType=messages.getType();}

我正在另一个活动中加载消息。第一次它们加载正确,但滚动后会错位。请帮帮我。我解决不了这个问题。感谢

这可能是因为滚动回收器视图的id后,项目出现混乱尝试在适配器中重写以下方法

@Override
public long getItemId(int position) {
return position;
}
@Override
public int getItemViewType(int position) {
return 1;
}

最新更新