【问题标题】:How to get firebase database category data by id and show that data in seperate recyclerview?如何通过 id 获取 firebase 数据库类别数据并在单独的 recyclerview 中显示该数据?
【发布时间】:2018-10-15 08:04:41
【问题描述】:

我是 firebase 数据库的新手,我正在尝试在 android 中将这样的数据检索到两个 recyclerviews 中,点击sermoncategoryrecycerview 显示该数据的所有布道有人可以帮助我吗?用android代码也谢谢!

"sermons"
        |_ _"0"
              |_ "sermonurl": "https://..."
              |_ "sermontitle": "Title"
              |_ "sermoncategory": "2"

        |_ _"1"
              |_ "sermonurl": "https://..."
              |_ "sermontitle": "Title"
              |_ "sermoncategory": "3"

    "sermoncategory"
           |
           |_ "2" 
               |_"categorytitle": "Covenant of Blessing"
               |_"categoryimageurl": "https://..."
               |_"categorydesciption":"bla bla bla"

           |_ "3"
               |_"categorytitle": "Healing"
               |_"categoryimageurl": "https://..."
               |_"categorydesciption":"bla bla bla"

【问题讨论】:

  • 您能说得更准确些吗?您想从数据库中检索哪些数据?
  • 我想链接两个节点,就像 SQL 数据库键一样,因为 firebase 数据库不是关系数据库,所以......就像在一个 recycerview 中获取所有电影类别类型(喜剧、戏剧、动作......等)当 onclick 通过其 id 将其链接到指定数据时
  • 据我所知,你想先知道你讲道的类别,如果假设类别是 2,你想用节点 2 显示 sermoncategory 的数据,对吧?
  • This 是一种推荐的方式,您可以通过这种方式从 Firebase 实时数据库中检索数据并使用 FirebaseRecyclerAdapter 将其显示在 RecyclerView 中。
  • @PradyumanDixit 是的!!

标签: android firebase firebase-realtime-database android-recyclerview


【解决方案1】:

如果你想得到 sermoncategory 为 2 的布道,你可以像这样使用 orderByChild() 查询:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("sermons");

ref.orderByChild("sermoncategory").equalTo(2).addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
           // this dataSnapshot will have all the sermons with sermocategory as 2
        }

        @Override
        public void onCancelled(FirebaseError firebaseError) {
            Log.e("MainActivity", "onCancelled", firebaseError.toException());
        }
    });

【讨论】:

  • 那么,当我使用 onclick 创建布道数据快照的回收视图时,我需要调用它吗?还是我需要查询?
  • 这段代码会将所有 sermoncategory 为 2 的讲道存储在 dataSnapshot 中,您可以使用它来填充您的 RecyclerView。
  • @VãmsiMadduluri 如果此答案对您有所帮助,请考虑将其标记为正确并支持它,我将不胜感激。干杯:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-11-15
  • 2021-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-26
相关资源
最近更新 更多