我正在尝试将从Firebase数据库收到的对象添加到ArrayList。但是,即使在调用add方法之后,列表仍保持为空。我究竟做错了什么?我正在尝试从firebase加载数据并将其显示在列表视图中。我使用日志语句来检查是否正在接收来自firebase的数据。有人提出建议吗?
n=3
答案 0 :(得分:0)
您将获得null
,因为您在rescueList
之外声明了onDataChange()
ArrayList。这是由于此方法的异步行为而发生的。这意味着在调用onDataChange()
方法之前执行将这些对象添加到ArrayList的语句。要解决此问题,您需要在ArrayList
内声明并使用onDataChange()
。注意不要在for循环中添加。
如果您想在该方法之外使用这些值,我建议您从此post读取我的答案。