首页 > 解决方案 > 获取子文档中的数据

问题描述

在此处输入图像描述在此处输入图像描述

大家好,你们能帮我解决我的问题吗?我需要TextView在子文档(“时间”)中显示所有数据。帮帮我,我是菜鸟。

db3.collection("Blood_Glucose").document(uid).collection("Date").document(date).collection("Time").document(time).set(answer);

标签: javaandroidfirebasegoogle-cloud-firestore

解决方案


要获取该文档中的数据,您必须get()拨打电话并附加一个侦听器,如以下代码行所示:

DocumentReference timeRef = db3.collection("Blood_Glucose").document(uid)
    .collection("Date").document(date)
    .collection("Time").document(time);

假如说:

uid = rom.reyes2398@yahoo.com
date = December 04, 2019
time = 03:15 AM

要获取Result例如的值,请使用以下代码行:

timeRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<DocumentSnapshot> task) {
        if (task.isSuccessful()) {
            DocumentSnapshot document = task.getResult();
            if (document.exists()) {
                String result = document.getString("Result");
                String date = document.getString("Date");
                String time = document.getString("Time");
                Log.d(TAG, result + " / " + date  + " / " + time);
            } else {
                Log.d(TAG, "No such document");
            }
        } else {
            Log.d(TAG, "get failed with ", task.getException());
        }
    }
});

您的 logcat 中的结果将是:

Risk of Having HyperGlycemia / December 04, 2019 / 03:15 AM

推荐阅读