[英]Android switch item position programmatically in a RelativeLayout
[英]Android Recylcerview set Position of Item programmatically
我为myChats创建了recylcerview。 在此Recyclerview中,我可以看到一个拇指,最后一条消息和名称。 如果我发送或接收新消息,则该项目应转到第一个位置,例如在whatsapp中。 为接收新消息,我创建了以下方法:
private void getLastMSG(final String userId, final TextView lastMSG){
String userid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Users").child(userid).child("connections").child("matches").child(userId);
ref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
String lastMsg = dataSnapshot.child("lastMsg").getValue().toString();
lastMSG.setText(lastMsg);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
现在我想将此项目设置为第一个位置,但我不知道如何
您需要致电:
您的recyclerview
适配器中的notifyItemMoved(oldPos, newPos)
。 请注意,您需要在此之前更新数据模型,以便在onBindViewHolder
方法中绑定正确的视图。
请参阅适配器文档 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.