但是当我上传一个结果时,它应该删除节点.....删除所有正确的,但几分钟后出现在数据库中(我知道我的问题是在java中,但我需要一个更快速的临时解决
我的问题是,如果节点包含的属性少于正确的节点(20+),或者在java中如何检测对象是否小于预期,我如何检测和删除节点。
mMatchesPlayDatabaseReference.child(matchId).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
Match match = dataSnapshot.getValue(Match.class);
adapter.setFriendsList(stringArrayList);
adapter.notifyDataSetChanged();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
答案 0 :(得分:0)
要解决此问题,您需要在dataSnapshot对象上使用getChildrenCount()
方法。通过这种方式,您可以检查子项的数量是否小于POJO类中存在的属性数。
在将数据写入数据库时,我还要重新使用addOnCompleteListener()方法。添加一个在任务完成时调用的侦听器。