【发布时间】:2017-06-28 12:35:51
【问题描述】:
Firebase 数据结构
{ "questions" : {
"-KkLGS71meu8aA_wcqTq" : {
"q_answer" : "....",
"q_category" : "....",
"q_qid" : "1",
"q_question" : "..."
},
"-KkLGkf8tNb-OKwu2qVa" : {
"q_answer" : "...",
"q_category" : "...",
"q_qid" : "2",
"q_question" : "..."
},
"-KkLH1T1ZhFKJaqYFuJ4" : {
"q_answer" : "...",
"q_category" : "...",
"q_qid" : "3",
"q_question" : "..."
} }
数据库引用
questionRef.orderByChild("q_qid")
如何使用 FirebaseRecyclerAdapter 生成随机查询和显示? 还有其他方法吗?
编辑:
我试试这个代码
questionRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
long allNum = dataSnapshot.getChildrenCount();
int maxNum = (int)allNum;
int minNum = 1;
int randomNum = new Random().nextInt(maxNum - minNum + 1) + minNum;
int count = 0;
Iterable<DataSnapshot> ds = dataSnapshot.getChildren();
Iterator<DataSnapshot> ids = ds.iterator();
Map<String, Object> question;
while(ids.hasNext() && count < randomNum) {
question = (Map<String, Object>) ids.next().getValue();
String q = question.get("q_question").toString();
viewHolder.question.setText(q);
count ++; // used as positioning.
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
但有些问题不止一次出现?
【问题讨论】:
标签: android firebase firebase-realtime-database android-recyclerview firebaseui