java - 如何在 firebase 中添加具有不同父级的 "price"节点的所有值

标签 java android firebase firebase-realtime-database

数据库结构

enter image description here

我对 android 和 Firebase 还很陌生,在尝试从节点添加值时遇到了一些问题,问题是,我想从“价格”节点添加所有值,但我有问题,每个价格节点都有不同的父节点,我不知道如何使用不同的父节点添加所有值

我已经尝试过:

@Override
public void onDataChange(DataSnapshot dataSnapshot) {
    for(DataSnapshot ds : dataSnapshot.getChildren()) {
    databaseReference = firebaseDatabase.getReference().child("mycart").child(ID).child(uid).child("quantity");
    ValueEventListener eventListener = new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            for(DataSnapshot dSnapshot : dataSnapshot.getChildren()) {
             ///...code
            }
        }

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

最佳答案

要汇总所有键的所有价格,您可以执行以下操作:

databaseReference = firebaseDatabase.getReference().child("mycart").child(ID);
databaseReference.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        float price = 0;
        for(Datasnapshot snapshot: datasnapshot.getChildren()){
            price += snapshot.child("price").getValue(Float.class);
        }
        Log.d("Total: ", price);
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        System.out.println("The read failed: " + databaseError.getCode());
    }
});

关于java - 如何在 firebase 中添加具有不同父级的 "price"节点的所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57363514/

相关文章:

java - ClassNotFoundException : in gnu. gcj.runtime.SystemClassLoader

android - 如何在 Android 的 tableLayout 中动态添加一行

android - 在没有自定义 View 的情况下将 editText 放在 AlertDialog 中?

ios - Crashlytics(无 Fabric)未显示崩溃 iOS

android - 将 firebase 添加到 android studio 时,gradle 不同步

javascript - 从 JavaScript 访问 Firebase

java - 从 OS X 应用程序以编程方式编辑 TFS 工作项字段

java - Java 强制转换会引入开销吗?为什么?

java - Selenium chromeDriver 崩溃“UnreachableBrowserException/

android - 如何从我的应用程序数据文件夹中获取任何文件的路径