Android Firebase 更改多个值

标签 android firebase firebase-realtime-database

假设我在 Firebase 数据库中有以下数据库结构。

   {
        "items": {
            "1": {
                "subitems": {
                    "2":"true",
                    "3":"false",
                    "4":"true"
                }
            },
            "2": {
                "subitems": {
                    "1":"false",
                    "4":"false",
                    "5":"true"
                }
            },
            "3": {
                "subitems": {
                    "6":"false",
                    "1":"false",
                    "7":"true"
                }
            }
        }
     }

我想更改其键等于"1" 的子项的所有值。 如您所见,对于第 2 项和第 3 项的子项,键为 1,值为 false。 如何将这两项值更改为 true

最佳答案

要解决这个问题,请使用以下代码:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference itemsRef = rootRef.child("items");
ValueEventListener eventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for(DataSnapshot ds : dataSnapshot.getChildren()) {
            ds.child("subitems").child("1").getRef().setValue("true");
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {}
};
itemsRef.addListenerForSingleValueEvent(eventListener);

关于Android Firebase 更改多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48827242/

相关文章:

java - DrawerToggle 汉堡图标未显示

java - Android 使按钮连续淡入和淡出

java - Android 应用程序在尝试获取 EditText 值时崩溃

ios - signInWithPhoneNumber() 在 react native 中不起作用

java - 从 Firebase 数据库快照读取数据

java - Android map 应用程序未在设备中运行

node.js - Firebase:node-tar 或 npm 与此版本的 Node.js 不兼容

ios - Firebase Storage 异步图像下载随机顺序

javascript - Firebase 规则 - 只读查询中的值

Firebase 客户端错误 : Custom token corresponds to a different audience