Android 如何在新的Firebase数据库引用(Recyclerview)中排序

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

我从用户名结构中提取数据,我想按名称或用户名排序。使用新的firebase数据库引用是否可以实现这一点。我一直在四处寻找,找不到任何关于它的东西

这是我的密码:

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非常感谢,这正是我想要的。我试过了,但我从来没有使用过这个查询,所以它不起作用。传入一个查询与一个数据库引用对我来说是个好办法!传递查询和数据库引用对我来说是个好办法!