对于RecyclerView,我的onBindViewHolder使用ArrayList中的setText,我从Firebase中加载数据。 但是,对于第一个onBindViewHolder调用,它给我一个空ArrayList,因为数据尚未完成加载。 (第二,第三...等会及时获取值) ArrayList检索完所有数据后,如何调用onBindViewHolder?
答案 0 :(得分:0)
在设置适配器之前尝试加载数据。在适配器中,将数据通过构造函数传递。
答案 1 :(得分:0)
在加载List中的所有数据后尝试设置setAdapter。 并在getItemCount中执行此操作
@Override
public int getItemCount() {
if (list == null)
return 0;
return list.size();
}
这是因为您的列表为null,它将返回0表示onBindViewHolder将不会被调用,并且它不为null,那么它将在您的onBindViewHolder被调用时返回列表的大小。