gpt4 book ai didi

java - 如何检查给定的 firebase 引用是否不包含任何值或者为空

转载 作者:行者123 更新时间:2023-12-02 10:19:04 26 4
gpt4 key购买 nike

如果给定的 Firebase 引用不包含任何输入,我想关闭进度栏。如果给定的引用没有数据,则进度条不断加载,如何解决此问题。

如果 DeliveryBoyReference.addChildEventListener(new ChildEventListener() ..,我想关闭进度条函数没有被调用

recyclerView = output.findViewById(R.id.list_of_all_delivery_area_recyclerview); DeliveryBoyItems = new ArrayList<>();

    final ProgressDialog pd = new ProgressDialog(getContext());
pd.setMessage("loading");
pd.setCanceledOnTouchOutside(false);
pd.show();

firebaseStorage=FirebaseDatabaseReference.getStorageINSTANCE();
storageReference=firebaseStorage.getReference("DeliveryBoyImage/");


firebaseDatabase = FirebaseDatabaseReference.getDatabaseInstance();
deliveryBoyReference = firebaseDatabase.getReference("DELIVERYBOY");

deliveryBoyReference.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
DeliveryBoyReference deliveryBoyReference = dataSnapshot.getValue(DeliveryBoyReference.class);
deliveryBoyItems.add(deliveryBoyReference);
adapter.notifyDataSetChanged();
pd.dismiss();
}

@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {

Log.i("fail","fail");

}

@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {

Log.i("fail","fail");

}

@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {

}

@Override
public void onCancelled(DatabaseError databaseError) {
Log.i("fail1","fail");
}
});

最佳答案

您无法使用 ChildEventListener 关闭进度条,因为仅当子项实际存在时才会调用 onChildAdded 方法。因此,如果您想关闭进度条,请添加一个保证会触发的附加 ValueEventListener:

deliveryBoyReference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
pd.dismiss();
}

@Override
public void onCancelled(DatabaseError databaseError) {
Log.i("fail1","fail");
}
});

这不会导致使用额外的带宽,因为 Firebase 实际上只会为两个监听器检索一次数据。

关于java - 如何检查给定的 firebase 引用是否不包含任何值或者为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54467222/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com