База данных Firebase в реальном времени: есть ли способ получить значение из другого узла? - PullRequest
0 голосов
/ 22 октября 2018

Моя структура данных такая, и я хочу получить значение из другого узла.

root
  |__data__people___name1:...
         |        |_name2:...
         |        |_name3:...
         |         ...
         |_location__latitude:...
                   |_longitude:...

Теперь я хочу получить значение местоположения (LatLng, который сохраняется ранее), когда дочерний элементдобавлено.Но то, что я знаю, это получить добавленную стоимость.Есть ли способ сослаться на другое значение узла?

data.child("people").addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            //get location's value here
            }
        }

Кроме того, не могли бы вы сказать мне, как получить LatLng из базы данных и присвоить его LatLng?

1 Ответ

0 голосов
/ 22 октября 2018
data.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot dataSnapshot) 
        {
           //This loops through the people node
           for( DataSnapshot snao : dataSnapshot.child("people").getChildren() )
           {}

           //get location's value here. Loops through Child nodes
           for( DataSnapshot locSnap : dataSnapshot.child("location").getChildren() )
           {}

           // OR for location
           double lat = (double)dataSnapshot.child("location").child("latitude").getValue();
           double lng = (double)dataSnapshot.child("location").child("longitude").getValue();
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...