我正在将Firebase实时数据库用于Android Studio。代码java。我使用实时数据库。我想每次随机带20个用户。
我有这个数据库:
Users: {
User uıd: {
User uıd: {
User uıd: {
...
DatabaseReference profileUserReff ;
RecyclerView recyclerView;
FirebaseRecyclerOptions<Post> options ;
FirebaseRecyclerAdapter<Post,HomesViewHolder> adapter ;
profileUserReff = FirebaseDatabase.getInstance().getReference().child("Users");
我的代码:
public void getrandomuser(){
options =
new FirebaseRecyclerOptions.Builder<Post>()
.setQuery(profileUserReff, Post.class)
.build();
adapter =
new FirebaseRecyclerAdapter<Post, HomesViewHolder>(options) {
@Override
protected void onBindViewHolder(@NonNull final HomesViewHolder holder, final int position, @NonNull final Post model ) {
final String PostKey = getRef(position).getKey();
holder.namesurnamehome.setText(PostKey);
}
@NonNull
@Override
public HomesViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View itemView = LayoutInflater.from(getContext()).inflate(R.layout.user_model,viewGroup,false);
return new HomesViewHolder(itemView);
}
};
adapter.startListening();
recyclerView.setAdapter(adapter);
anasayfareflesh.setRefreshing(false);
}
如何带20个随机用户?
要从您的Users
节点中获取随机用户对象,请参阅以下帖子提供的答案:
但是,当使用Firebase-UI库时,适配器将始终按查询返回的顺序显示项目。因此,没有内置的支持来获取随机项目或在客户端上对结果进行重新排序。我想到的一种可能的解决方案是通过子类化FirebaseRecyclerAdapter
并提供自己的实现来创建自己的适配器。