android - Firestore - 添加 .whereEqualTo 数据后不会实时刷新
问题描述
添加方法后 .whereEqualsThis 数据不会实时刷新。我需要切换到不同的屏幕并回来刷新。有谁知道为什么会这样?
这是代码:
Query query = dailyGoalsRef.whereEqualTo("isNotToDisplay", false).orderBy("date", Query.Direction.ASCENDING);
FirestoreRecyclerOptions<DailyGoalsModel> firestoreRecyclerOptions = new FirestoreRecyclerOptions.Builder<DailyGoalsModel>()
.setQuery(query, DailyGoalsModel.class)
.build();
firestoreRecyclerAdapter =
new FirestoreRecyclerAdapter<DailyGoalsModel, DailyGoalsHolder>(firestoreRecyclerOptions) {
@Override
protected void onBindViewHolder(@NonNull DailyGoalsHolder holder, int position, @NonNull DailyGoalsModel model) {
String fragmentName = "dailyGoals";
holder.setGoalsList(context, userEmail, model, fragmentName);
}
@NonNull
@Override
public DailyGoalsHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.daily_goals_list, parent, false);
return new DailyGoalsHolder(view);
}
@Override
public void onDataChanged() {
if (progressBar != null) {
progressBar.setVisibility(View.GONE);
}
if (getItemCount() == 0) {
recyclerView.setVisibility((View.GONE));
emptyView.setVisibility((View.VISIBLE));
} else {
recyclerView.setVisibility(View.VISIBLE);
emptyView.setVisibility(View.GONE);
}
}
@Override
public int getItemCount() {
return super.getItemCount();
}
};
recyclerView.setAdapter(firestoreRecyclerAdapter);
return layout;
值变化“isNotToDispaly”
if ((date.getTime()) < (todayDate.getTime() - 2*24*60*60*1000)) {
rootRef.collection("goalsData").document(userEmail).collection(fragmentName).document(goalsId).update("isNotToDisplay", true);
}
它位于
public void setGoalsList(final Context context, String userEmail, DailyGoalsModel goalsModel, String fragmentName)
解决方案
我解决了这个问题。这很不寻常,因为它是关于不在 Firebase 平台中添加索引。
推荐阅读
- graphql - 使用 gatsby-image 和 graphql 获取图像时不断出错
- c# - 异步任务似乎同步运行
- php - PHP - 为没有时区名称的区域(海上位置)设置默认时区偏移量
- kubernetes - Terraform 应用,如何增加计数并将 kubernetes 工作节点添加到现有工作人员?
- ios - 如何在 iOS 中使用 CorePlot 制作填充颜色的垂直范围图?
- google-chrome - 渐进式 Web 应用 (PWA) 将页面重定向到独立模式
- reactjs - 在反应项目中使用引导程序配置 scss 的问题
- python - 在 for 循环中识别要附加的列表中特定值的索引
- python-3.x - 如何使用 YouTube API 仅按用户名搜索?
- javascript - 使用全选或单独选择多个复选框