【发布时间】:2022-11-11 06:42:02
【问题描述】:
我正在尝试使用 Firebase 制作测验应用程序,但我需要从不同的主题中随机获取 5 个问题并将它们添加到 ArrayList 。我已经从 1 个主题(孩子)中生成了 1 个随机问题,我不能让其他 4 个主题有来自不同主题的 5 个问题 我的 Firebase 数据库在这里:
我的代码是:
final Query questionFromB = FirebaseDatabase.getInstance().getReference().child("B").orderByChild("questionID").equalTo(new Random().nextInt(15));
questionFromB.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot datasnapshot) {
for (DataSnapshot question : datasnapshot.getChildren()){
if (questionCount < 1){
questionView.setText(question.getValue(QuizQuestions.class).getQuestionText());
answerText.setText(question.getValue(QuizQuestions.class).getAnswerText());
arrayList.add(new QuizQuestions(question.getValue(QuizQuestions.class).getQuestionID(),question.getValue(QuizQuestions.class).getQuestionText(),question.getValue(QuizQuestions.class).getAnswerText()));
datasnapshot.getChildrenCount();
questionCount ++;
}else{
nextButton.setVisibility(View.GONE);
nextActivityButton.setVisibility(View.VISIBLE);
for (int i=0;i<arrayList.size();i++){
textView.append(arrayList.get(i).getQuestionText());
textView.append(" \n ");
textView.append(" \n ");
}
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
Toast.makeText(MainActivity.this, "Error, something was wrong", Toast.LENGTH_SHORT).show();
}
});
(在第二个活动中,我只是在 TextView 中显示 ArrayList 内容)
【问题讨论】:
标签: java android firebase firebase-realtime-database