java选择下一个值firebase 安卓
我想得到第一个注册,然后当用户点击下一步按钮时,第二个注册,依此类推
我有这个:
<Button
安卓:id="@+id/button"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_marginTop="47dp"
安卓:onClick="next"
安卓:text="Button" />
这是:
public void next(View view) {
read();
}
我的火力基地是:
private void read() {
mDatabase.child("question").child("cf").orderByKey().limitToFirst(1).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot recipeSnapshot: dataSnapshot.getChildren()) {
lastKey = recipeSnapshot.getKey();
String pergunta = Objects.requireNonNull(recipeSnapshot.child("question").getValue()).toString();
Toast.makeText(MainActivity.this, pergunta, Toast.LENGTH_SHORT).show();
}
}
});
所以当用户打开活动时,我想显示第一个值,当他点击按钮时,我想显示第二个值,依此类推
有什么办法解决这个问题吗
# 1 楼答案
您已经了解了如何限制Firebase返回的数据量:
.limitToFirst(1)
不获取Firebase中的下一项,您需要知道从哪个项开始返回数据。在您的情况下,这意味着您需要:
假设您已经输入了
lastKey
,您可以使用以下命令读取下一个结果: