如何使用firebase android查询多个节点中的特定子值

如何使用firebase android查询多个节点中的特定子值,第1张

概述我想查询多个节点中的特定子值,以便通过FirebaseListAdapter在列表视图中填充它们. 我正在通过firebaseListAdapter方法的firebase引用来监听,这是下图中的红色矩形, 我想在列表视图中填充“类别”键的值.在下图中为绿色矩形. 我的代码在这里: catgoryList = (ListView) findViewById(R.id.catList); ro 我想查询多个节点中的特定子值,以便通过Firebaselistadapter在列表视图中填充它们.
我正在通过firebaselistadapter方法的firebase引用来监听,这是下图中的红色矩形,
我想在列表视图中填充“类别”键的值.在下图中为绿色矩形.

我的代码在这里:

catgoryList = (ListVIEw) findVIEwByID(R.ID.catList);    rootRef = FirebaseDatabase.getInstance().getReference();    restaurantMenuRef = rootRef.child("menu").child(restaurantID);    Firebaselistadapter<String> listadapter = new Firebaselistadapter<String>            (this,String.class,R.layout.menu_List_item,restaurantMenuRef ) {        @OverrIDe        protected voID populateVIEw(VIEw v,String s,int position) {            TextVIEw menuname = (TextVIEw)v.findVIEwByID(R.ID.menuname);            menuname.setText(s);        }    };    catgoryList.setAdapter(listadapter);

并且包含TextVIEw的ListVIEw的布局显示类别名称.

解决方法 您需要覆盖Firebaselistadapter.parseDataSnapshot()以从DataSnapshot中提取正确的值:

Firebaselistadapter<String> listadapter = new Firebaselistadapter<String>        (this,restaurantMenuRef ) {    @OverrIDe    protected String parseSnapshot(DataSnapshot snapshot) {        return snapshot.child("@R_502_4602@").getValue(String.class);    }    @OverrIDe    protected voID populateVIEw(VIEw v,int position) {        TextVIEw menuname = (TextVIEw)v.findVIEwByID(R.ID.menuname);        menuname.setText(s);    }};
总结

以上是内存溢出为你收集整理的如何使用firebase android查询多个节点中的特定子值全部内容,希望文章能够帮你解决如何使用firebase android查询多个节点中的特定子值所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1128079.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存