从Cloud Firestore读取 - 项目简短为空

时间:2018-02-10 23:38:00

标签: java android firebase

我正在从Firebase Cloud Firestore读取数据并将其填充到我的UI中。以下是我的数据结构:

enter image description here

以下是我从Cloud Firestore读取数据并填充UI的代码。我注意到,对于我的TextView,该项目在显示"测试Q 2之前暂时为空。"我读数据不正确吗?在一瞬间,TextView填充了Firebase中的问题,但我发现奇怪的是它是短暂的null并且在UI中可以看到null:

    mStoreBaseRef = FirebaseFirestore.getInstance();
    mStoreSelectedPollRef = mStoreBaseRef.collection(POLL_LABEL).document(pollID);
    mStoreSelectedPollRef.get().addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() {
        @Override
        public void onSuccess(DocumentSnapshot documentSnapshot) {
            Poll selectedPoll = documentSnapshot.toObject(Poll.class);
            String pollQuestion = selectedPoll.getQuestion();
            mPollQuestion.setText(pollQuestion);
            mPollQuestion.setTypeface(null, Typeface.BOLD);

        }
    });

1 个答案:

答案 0 :(得分:0)

数据是从Firestore异步加载的。根据您的连接速度和状态,可能需要几百毫秒到几秒才能获得数据。

因此填充轮询之前的短暂时间是预期的行为。如果这对您的用户造成混淆,您可能希望使用良好的默认值填充它,或者显示“正在加载,请稍候”类型的消息。