我进行了查询,仅从RecyclerView内的数据库中拉出6个itens,但目前我只能orderByChild,limitToFirst或last。一切都很好,但是...
每次刷新活动时,我都想在Recyclerview中放入随机标记。
如何将随机数据放入RecyclerView中?Firebase没有特殊的随机查询。还有其他方法吗?
这是我的代码:
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()
)。这样,当您想要获取随机数据时,可以使用如下查询:
query = mDatabase.orderByChild("id").startAt(generateRandom()).limitToFirst(6);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句