如何在执行其他代码之前首先获取引用数据?

时间:2016-01-06 00:35:47

标签: java android firebase

我需要从Firebase上的特定位置获取所有数据,然后在处理之前将数据放入ArrayList。我有这样的事情:

final ArrayList<String> data = new ArrayList<String>();
Firebase ref = rootRef.child("data");
ref.addListenerForSingleValueEvent(new ValueEventListener() {}
    @Override
    public void onDataChange(DataSnapshot snap) {
        for (Object obj : snap.getChildren) {
            data.add(obj.getValue().toString());
        }
    }
);
processData(data);

我是一个相当新手用这种东西,但我认为这不好,尤其是如果要读取大量数据并且用户的连接速度很慢。< / p>

关于如何解决这个问题的任何想法?

1 个答案:

答案 0 :(得分:0)

我对Firebase不熟悉,但如果他们没有像Android加载程序回调“onLoadFinished(){...}”那样具有某种等价物,我会感到震惊。您应该在Firebase中找到类似的内容,并从中调用“processData(data)”。