Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
显示消息";“没有更多”;Android java中添加子事件侦听器的最后一个元素_Java_Android_Firebase Realtime Database - Fatal编程技术网

显示消息";“没有更多”;Android java中添加子事件侦听器的最后一个元素

显示消息";“没有更多”;Android java中添加子事件侦听器的最后一个元素,java,android,firebase-realtime-database,Java,Android,Firebase Realtime Database,我在检查数据库add listener中是否存在子项时遇到问题 我尝试了以下代码: Shorted.addChildEventListener(new ChildEventListener() { @Override public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) { if (!dataSnapsho

我在检查数据库add listener中是否存在子项时遇到问题

我尝试了以下代码:

  Shorted.addChildEventListener(new ChildEventListener() {
            @Override
            public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
                if (!dataSnapshot.hasChildren()) {
                    Toast.makeText(getActivity(), "No more  Users", Toast.LENGTH_SHORT).show();

                }
});
不显示toast消息


无法检测是否存在具有
ChildEventListener
的子级。原因是只为现有子节点调用
onchildaded
。如果没有子节点,则不会调用它

因此,您需要一个
ValueEventListener
来检测没有子节点的情况。比如:

Shorted.addListenerForSingleValueEvent(new ValueEventListener() {
  @Override
  public void onDataChange(DataSnapshot dataSnapshot) {
    if (!dataSnapshot.hasChildren()) {
        Toast.makeText(getActivity(), "No users", Toast.LENGTH_SHORT).show();
    }
  }

  @Override
  public void onCancelled(DatabaseError databaseError) {
    throw databaseError.toException();
  }
});
另见:


我想你是在一个框架中完成的,而你是在loaddata中完成的吗?嘿,我需要添加子侦听器,而不是值事件侦听器。我也知道这个答案,但它不是必需的!提供正确答案!您无法检测是否存在具有
ChildEventListener
的子级。我们可以检测该子级的最后一个元素!在最后一个元素显示消息