如何从Firebase读取子数据

时间:2019-09-11 01:07:33

标签: java android firebase firebase-realtime-database children

我正在使用android应用,尝试从Firebase读取产品数据时遇到问题。 我需要这些产品名称,产品价格和产品描述数据,以便在回收者视图中使用。

当我尝试运行代码时,我没有得到这些数据。
我尝试了给定的代码:

form do |f|
  f.semantic_errors *f.object.errors.keys
  f.inputs do
    f.input :name
    f.rich_text_area :description
  end
  f.actions
end

1 个答案:

答案 0 :(得分:0)

ProductsRef.addListenerForSingleValueEvent(
        new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                //Get map of Products in datasnapshot
                getAllItems((Map<String,Object>) dataSnapshot.getValue());
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {
                Log.w( "Failed to read value.", error.toException());
            }
        });

private ArrayList getAllItems(Map<String,Object> products) {

    ArrayList<Long> list = new ArrayList<>();
    for (Map.Entry<String, Object> entry : products.entrySet()){
        //Get user map
        Map value = (Map) entry.getValue();
        list .add((Long) value .get("category"));
        // add all your item
    }
}