gpt4 book ai didi

java - 如何从 Firebase Android 查询中的 StartAt 特定位置和 EndAt 特定位置获取值

转载 作者:行者123 更新时间:2023-11-29 08:20:26 24 4
gpt4 key购买 nike

我无法从我的数据库中获取数据。

我的数据库: enter image description here

我的代码:

 Query query = FirebaseDatabase.getInstance().getReference("Quotes").startAt(5).endAt(10);
query.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for(DataSnapshot data: dataSnapshot.getChildren()){
String authorName = data.child("Name").getValue().toString();
String quoteGiven = data.child("Quote").getValue().toString();
name.setText("- " + authorName);
quote.setText(quoteGiven);

}
}

@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Toast.makeText(MainActivity.this, "Loading Quote failed", Toast.LENGTH_SHORT).show();
}
});

我想从第 5 个 child 到第 10 个 child 获取我的数据。

我试过:

Select random entry from Firebase Realtime Database in Java

get random value android firebase java

Firebase queries not working on Android even though the reference retrieves data

但是,它只显示我留下的硬编码文本而不是数据库中的文本吗?

谁能帮帮我,我不确定我哪里做错了

最佳答案

尝试使用 orderByKey():

FirebaseDatabase.getInstance().getReference("Quotes").orderByKey().startAt(String.valueOf(5)).endAt(String.valueOf(10));

这应该会为您提供数据库中从第 5 个键到第 10 个键的所有数据。

来自文档:

orderByKey()

Order results by child keys

https://firebase.google.com/docs/database/android/lists-of-data#sort_data

关于java - 如何从 Firebase Android 查询中的 StartAt 特定位置和 EndAt 特定位置获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59353861/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com