Firebase - 将子项添加到数组列表 - java

我在公共汽车访问的路线中有一个庄园列表,但是有一天庄园关闭并且管理员必须更改路线列表,我希望 RedLineRoutes 中的孩子可以更改,我想遍历一个节点并获得所有的孩子并将它们插入一个数组中,这可能吗

我的数据库

http://img4.mukewang.com/646db4d100015e6902370307.jpg

我的代码

  void mConditions()

    {

        Log.d(TAG,"STARTED mCONDITIONS");


            DatabaseReference RedLineRouteReference = FirebaseDatabase.getInstance().getReference().child("RedLineRoute");

            RedLineRouteReference.addValueEventListener(new ValueEventListener() {

                @Override

                public void onDataChange(@NonNull DataSnapshot dataSnapshot) {



                        for (DataSnapshot child: dataSnapshot.getChildren()) {

                            String key = child.getKey();

                            String value = child.getValue().toString();

                            Log.i(TAG,key+"\n"+value);

                        }                 

                }


                @Override

                public void onCancelled(@NonNull DatabaseError databaseError) {


                }

            });


        }

这是输出

I/TimeTable: aMaison

    true

I/TimeTable: bMontRochelle

    true

    cHoldenManz

    true'

I/TimeTable: dCharmonix

    true

I/TimeTable: eDieuDonne

    true

I/TimeTable: fGrandeProvance

    true

    gRicketyBridge

    true

    aMaison

    true

I/TimeTable: bMontRochelle

    true

    cHoldenManz

    true'

    dCharmonix

    true

    eDieuDonne

    true

    fGrandeProvance

    true

I/TimeTable: gRicketyBridge

    true

    aMaison

    true

    bMontRochelle

    true

    cHoldenManz

    true'

    dCharmonix

    true

    eDieuDonne

    true

I/TimeTable: fGrandeProvance

    true

    gRicketyBridge

    true



我将如何获得将子项迭代到我可以使用的数组中的结果?


梵蒂冈之花
浏览 86回答 1
1回答

皈依舞

由于这个问题,我找到了答案但这里是代码,如果你想遍历 firebase 数据库中的子列表,并隔离节点的每个子节点。            DatabaseReference RedLineRouteReference = FirebaseDatabase.getInstance().getReference().child("RedLineRoute");            RedLineRouteReference.addValueEventListener(new ValueEventListener() {                @Override                public void onDataChange(@NonNull DataSnapshot dataSnapshot) {                    ArrayList<String> youNameArray = new ArrayList<>();                    for (DataSnapshot snapshot : dataSnapshot.getChildren()){                        String data = snapshot.getKey();                        youNameArray.add(data);                    }                    Log.v(TAG, "First data : " + youNameArray.get(0));                    Log.v(TAG, "Second data : " + youNameArray.get(1));                }                @Override                public void onCancelled(@NonNull DatabaseError databaseError) {                }            });这是输出V/TimeTable: First data : aMaison    Second data : bMontRochelleV/TimeTable: First data : aMaison    Second data : bMontRochelle所以我能够访问每个孩子并隔离每个孩子并用他们在数组中的位置来调用他们。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java