如何从Firebase检索所有孩子的价值?

时间:2016-11-17 03:44:28

标签: java android firebase firebase-realtime-database

我在Firebase中有这个数据库,这是我的数据库结构

My Database.json

My firebase structure.png

如何获取所有该值索引,这是我的代码:

lookup() {
if [[ -z "$1" ]] ; then
  echo ""
else
  ${AWK} -v "id=$1" 'BEGIN { FS = "=" } $1 == id { print $2 ; exit }' $2
fi
}

MY_LOCAL_VAR=$(lookup CONFIG_VAR filename.cfg)
echo "${MY_LOCAL_VAR}"

该代码只返回第一个值的索引:

ref.addChildEventListener(new ChildEventListener() {
    @Override
    public void onChildAdded(DataSnapshot dataSnapshot, String s) {
        Map<String, Object> td = (HashMap<String,Object>) dataSnapshot.getValue();

        List<Object> values = new ArrayList<Object>(td.values());
        Log.d("values ", String.valueOf(values));
        Iterator<Object> iterator = values.iterator();
        int length = (int) dataSnapshot.getChildrenCount();
        String[] sampleString = new String[length];
        while(i < length) {
            sampleString[i] = iterator.next().toString();
            Log.d(Integer.toString(i), sampleString[i]);
            i++;
        }
    }

如何从第一个值和第二个值获取所有索引?有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

将侦听器设置为上一级节点(即节点,该节点是要从中检索值的所有节点的根)。 这将为您提供一个HashMap,其中这些节点键作为HashMap键,节点值作为HashMap值。