android - 如何在android中以编程方式调用firebase的ValueEventListener
问题描述
student_edit.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot)
{
noof_placed=0;
placpercent=0.0;
enrolled=0;
for (DataSnapshot postSnapshot : dataSnapshot.getChildren())
{
StudentDetail std =
postSnapshot.getValue(StudentDetail.class);
std.setRollno(postSnapshot.getKey());
studentlist.add(std);
enrolled++;
if (!std.getPlacementcompany().toString().trim().equals("0"))
{
noof_placed++;
}
}
placpercent=(noof_placed / total_students) * 100;
start_progressbar(noof_placed,placpercent);
}
@Override
public void onCancelled(DatabaseError databaseError)
{
}
});
这是我从 firebase 中检索数据的侦听器,当 firebase 中的数据发生变化时会触发它。如何以编程方式调用此侦听器
解决方案
student_edit.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
// do your task
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
需要时调用此方法。每次将数据插入到 firebase 时,它都不会运行。
推荐阅读
- javascript - 来自 react-router-dom 的提示问题未触发
- mysql - 在存储过程中调用存储过程并将结果设置为变量时出现问题
- typescript - VSCode API:在终端中运行命令并使用输出
- python - 如何在 PyQt5 中为屏幕上的点移动设置动画
- javascript - 如何在 URL 中调用 echo 包括?
- django - TemplateDoesNotExist django 休息框架
- tensorflow - 无法安装tensorflow js
- python-3.x - 根据条件填充多个数据框列中的空值
- python - Python 中的 ElasticNetCV 与 R 中的 cvglmnet
- azure-application-insights - 当两个不同的应用程序提供相同的版本时,连续导出如何工作?