Как прочитать только первое дочернее значение в Android - PullRequest
0 голосов
/ 02 ноября 2019

Я новичок в Firebase. Я хотел знать, есть ли способ получить значение только первого ребенка и вставить его в мой счетчик в Android. Пример:

this

Точно так же, как показано на рисунке, я хотел получить только имя "slot x" вместо получения всех его значений. Возможно ли это сделать?

1 Ответ

0 голосов
/ 03 ноября 2019

Конечно, вы можете упорядочить и ограничить количество полученных дочерних узлов примерно так:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference myRef = rootRef.child("path to your parent node");
Query query = myRef.orderByKey().limiToFirst(1);
query.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot childSnapshot: dataSnapshot.getChildren()) {
            String key = childSnapshot.getKey(); // "slot 1"
            String status = childSnapshot.child("status").getValue(String.class); // "occupied"
            ...
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        throw databaseError.toException();
    }
});
...