繁体   English   中英

android studio 只检查和检索 firebase 数据库中的最后一个添加值

[英]android studio only checks and retrieve the last added value in firebase database

我正在尝试创建一个应用程序,我需要从 firebase 数据库中获取 WC 的可用性,但问题是 android studio 只检查最后添加的项目,并为我带来它的状态,

这是我的代码

 DatabaseReference myRef = FirebaseDatabase.getInstance().getReference().child("Bathrooms");
    myRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull final DataSnapshot dataSnapshot) {



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

                 Bathrooms bathrooms = dataSnapshot1.getValue(Bathrooms.class);
                bathroomsArrayList.add(bathrooms);

            }

            Browse.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {

                    if(bathrooms.getAvailability().equals("Yes")&&bathrooms.getFloor().equals(Floor.getSelectedItem())&&bathrooms.getSection().equals(Section.getSelectedItem())){

                        disable.setChecked(true);
                        Toast.makeText(getActivity(), "Browse done successfully", Toast.LENGTH_SHORT).show();

                    }

                    else {
                        disable.setChecked(false);
                        Toast.makeText(getActivity(), "No bathrooms", Toast.LENGTH_SHORT).show();


                    }

                }
            });





        }
        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {
            Toast.makeText(getActivity(), "Opsss.... Something is wrong", Toast.LENGTH_SHORT).show();

        }
    });

返回根视图;

}

这是数据所在的火力基地的图片

火力基地

我没有使用阵列适配器,因为我希望数据不断更新,因为我将使用传感器。

这项工作为您替换用户白名数据库头

myRef = FirebaseDatabase.getInstance().getReference().child("users");
        myRef.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(@NonNull DataSnapshot snapshot) {
                Log.d("rrr", "onDataChange0: ");
                for (DataSnapshot dataSnapshot:snapshot.getChildren())
                Log.d("rrr", "onDataChange: "+dataSnapshot.getValue().toString());
            }

            @Override
            public void onCancelled(@NonNull DatabaseError error) {

            }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM