Android FireBase onChildeded()触发器onChildRemoved()
我试图理解这两者之间的关系。从文档中: onChildAdded事件为每个现有子级触发一次,然后在每次将新子级添加到指定路径时再次触发。将向侦听器传递一个包含新子级数据的快照 而且: 移除直接子级时会触发onChildRemoved事件。它通常与onchildaded和onChildChanged事件一起使用。传递给事件回调的快照包含已删除子级的数据 因此,从技术上讲,我希望这两个事件根据它们的角色分别触发:即,当我添加新数据时,Android FireBase onChildeded()触发器onChildRemoved(),android,firebase-realtime-database,Android,Firebase Realtime Database,我试图理解这两者之间的关系。从文档中: onChildAdded事件为每个现有子级触发一次,然后在每次将新子级添加到指定路径时再次触发。将向侦听器传递一个包含新子级数据的快照 而且: 移除直接子级时会触发onChildRemoved事件。它通常与onchildaded和onChildChanged事件一起使用。传递给事件回调的快照包含已删除子级的数据 因此,从技术上讲,我希望这两个事件根据它们的角色分别触发:即,当我添加新数据时,onchildeded将被触发,而onChildRemoved是当
onchildeded
将被触发,而onChildRemoved
是当我从节点
删除子节点时被触发
但是,当我添加数据时,我会记录以下内容:
14:47:39.649 31305-31305/com.myapp D/addData\ux:onChildRemoved调用
14:47:39.649 31305-31305/com.myapp D/addData\uu:onchildaded打电话给
,我把他的台词注释掉了,它成功了
//限制到最后一个数据
最终查询lastSale=ref.limitToLast(1)代码>limitToLast无法解决您描述的上述问题,因此从技术上讲,我希望这两个事件根据它们的角色分别触发:即,当我添加新数据时将触发OnChildEded,而onChildRemoved是当我从节点中删除一个子节点时触发。出于某种原因,我反复复制该反应。我仍然无法解释。但上述行动给了我预期的结果。你解决了这个问题吗?我确实有朋友:)