Firebase:从 Firebase 中提取随机数据到 RecyclerView (android) [英] Firebase: Pull random data from Firebase to RecyclerView (android)
问题描述
我做了一个查询,只从 RecyclerView 内的数据库中提取 6 个 itens,但此时我只能 orderByChild、limitToFirst 或 last.一切正常,但...
I made a query to pull only 6 itens from database inside a RecyclerView, but at this time I can only orderByChild, limitToFirst or last. Everything is working fine but...
每次刷新活动时,我都想将 Random itens 放入 Recyclerview 中.
I'd like to put Random itens inside the Recyclerview every time I refresh the activity.
如何将随机数据放入 RecyclerView?Firebase 没有特殊的随机查询.还有其他方法吗?
How can I put random data inside RecyclerView? Firebase does not have a special Random query. Is there any other way to do it?
这是我的代码:
mDatabase = FirebaseDatabase.getInstance().getReference().child("Category");
query = mDatabase.limitToFirst(6);
@Override
protected void populateViewHolder(final CategoryViewHolder viewHolder, Category model, int position) {
viewHolder.setImage(getApplicationContext(), model.getImagem());
viewHolder.mView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
});
}
};
mImagesList.setAdapter(firebaseRecyclerAdapter);
}
我的适配器:
public static class CategoryViewHolder extends RecyclerView.ViewHolder {
View mView;
public CategoryViewHolder(View itemView) {
super(itemView);
mView = itemView;
}
public void setImage(Context ctx, String image1) {
ImageView image = (ImageView) mView.findViewById(R.id.photo);
Picasso.with(ctx).load(image1).into(image);
}
}
推荐答案
我建议您还向 Model 类添加另一个变量.类似于id"的东西.并且您将随机的 Long
值存储在其中.(例如从 0 到 15).然后创建一个将生成随机值的方法(假设该方法的名称是 generateRandom()
).这样,当你想获得随机数据时,你可以像这样使用你的查询:
I suggest you also add another variable to your Model class. Something like an "id". And you store random Long
values in it. (From 0 to 15 for example).
And then create a method that will generate a random value (lets say the method's name is generateRandom()
). This way, when you want to get the random data, you can use your query like this:
query = mDatabase.orderByChild("id").startAt(generateRandom()).limitToFirst(6);
这篇关于Firebase:从 Firebase 中提取随机数据到 RecyclerView (android)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!