Android 如何在新的Firebase数据库引用(Recyclerview)中排序
我从用户名结构中提取数据,我想按名称或用户名排序。使用新的firebase数据库引用是否可以实现这一点。我一直在四处寻找,找不到任何关于它的东西 这是我的密码:Android 如何在新的Firebase数据库引用(Recyclerview)中排序,android,firebase,android-recyclerview,firebase-realtime-database,Android,Firebase,Android Recyclerview,Firebase Realtime Database,我从用户名结构中提取数据,我想按名称或用户名排序。使用新的firebase数据库引用是否可以实现这一点。我一直在四处寻找,找不到任何关于它的东西 这是我的密码: databaseReference = FirebaseDatabase.getInstance().getReference().child("Users"); } @Override protected void onStart() { super.onStart(); FirebaseRecyclerAdap
databaseReference = FirebaseDatabase.getInstance().getReference().child("Users");
}
@Override
protected void onStart() {
super.onStart();
FirebaseRecyclerAdapter<addFriends,addFriendsViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<addFriends, addFriendsViewHolder>(
addFriends.class,
R.layout.addfriends_row,
addFriendsViewHolder.class,
databaseReference
) {
@Override
protected void populateViewHolder(addFriendsViewHolder viewHolder, addFriends model, int position) {
viewHolder.setName(model.getName());
viewHolder.setUsername(model.getUsername());
}
};
addfriendsRecyclerView.setAdapter(firebaseRecyclerAdapter);
}
谢谢 编辑:已经走开,回来完成回答。看到有人打败了我: 在FirebaseRecyclerAdapter构造函数中传递QueryRef,而不是数据库引用
databaseReference = FirebaseDatabase.getInstance().getReference().child("Users");
// ...
@Override
protected void onStart() {
super.onStart();
Query query = databaseReference.orderByChild("name"); // or ...orderByChild("username");
FirebaseRecyclerAdapter<addFriends,addFriendsViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<addFriends, addFriendsViewHolder>(
addFriends.class,
R.layout.addfriends_row,
addFriendsViewHolder.class,
query
) {
@Override
protected void populateViewHolder(addFriendsViewHolder viewHolder, addFriends model, int position) {
viewHolder.setName(model.getName());
viewHolder.setUsername(model.getUsername());
}
};
addfriendsRecyclerView.setAdapter(firebaseRecyclerAdapter);
}
编辑:已经走开,回来完成回答。看到有人打败了我: 在FirebaseRecyclerAdapter构造函数中传递QueryRef,而不是数据库引用
databaseReference = FirebaseDatabase.getInstance().getReference().child("Users");
// ...
@Override
protected void onStart() {
super.onStart();
Query query = databaseReference.orderByChild("name"); // or ...orderByChild("username");
FirebaseRecyclerAdapter<addFriends,addFriendsViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<addFriends, addFriendsViewHolder>(
addFriends.class,
R.layout.addfriends_row,
addFriendsViewHolder.class,
query
) {
@Override
protected void populateViewHolder(addFriendsViewHolder viewHolder, addFriends model, int position) {
viewHolder.setName(model.getName());
viewHolder.setUsername(model.getUsername());
}
};
addfriendsRecyclerView.setAdapter(firebaseRecyclerAdapter);
}
Query Query=databaseReference.orderbychildname非常感谢,这正是我要找的。我试过了,但是我从来没有使用过这个查询,所以它不起作用。Query Query=databaseReference.orderbychildname非常感谢,这正是我想要的。我试过了,但我从来没有使用过这个查询,所以它不起作用。传入一个查询与一个数据库引用对我来说是个好办法!传递查询和数据库引用对我来说是个好办法!