我只想在输入新数据时刷新数据,但我的代码无法正常工作它在重新打开同一活动后显示数据。
这是我的密码:
Total_bgt_dataref.addListenerForSingleValueEvent(new ValueEventListener(){
@Override
public void onDataChange(@NonNull DataSnapshot snapshot){
for(DataSnapshot ds:snapshot.getChildren()){
Map<String, Object> objectMap=(HashMap<String, Object>)snapshot.getValue();
String value=(String)objectMap.get("Total_Budget");
tv_budget.setText(value);
}
}
@Override
public void onCancelled(@NonNull DatabaseError error){
Toast.makeText(MainActivity.this,"DatabaseError Total Budget",Toast.LENGTH_SHORT).show();
}
});
1条答案
按热度按时间fhg3lkii1#
而不是
addListenerForSingleValueEvent
用户addValueEventListener
,自addListenerForSingleValueEvent
将被取消,但addValueEventListener
将始终侦听值更改事件。查看此项了解更多信息。
注意:您必须在完成侦听器之后删除它,因此您必须保留对侦听器的引用,并在最后删除它。