我正在使用onChildAdded加载对话。但是当我尝试排序时(按算法或Collections.sort)顺序错误。
这是我的代码:
Object_Conversation conversation=new Object_Conversation(dataSnapshot.getKey(),message);
// mConvers_List.add(conversation);
// mConvers_Adapter.notifyItemInserted(mConvers_List.size()-1);
if (mConvers_List.isEmpty()){
mConvers_List.add(conversation);
mConvers_Adapter.notifyItemInserted(mConvers_List.size()-1);
}else {
if (message.getSend_time_inmilies()<mConvers_List.get(0).getMessage().getSend_time_inmilies()) {
mConvers_List.add(conversation);
mConvers_Adapter.notifyItemInserted(mConvers_List.size()-1);
}else {
mConvers_List.add(0,conversation);
mConvers_Adapter.notifyItemInserted(0);
}
}
// for (int i = 0; i<mConvers_List.size(); i++){
// for (int j = i; j<mConvers_List.size(); j++){
// long time_j=mConvers_List.get(j).getMessage().getSend_time_inmilies();
// long time_i=mConvers_List.get(i).getMessage().getSend_time_inmilies();
//
// if (time_j > time_i){
// Collections.swap(mConvers_List,i,j);
// mConvers_Adapter.notifyItemMoved(i,j);
// }
// }
// }
//
// mConvers_Adapter.notifyItemRangeChanged(0,mConvers_List.size());
和结果,这不是正确的顺序。