Android Can';不要让FirestoreRecyclerAdapter显示项目

Android Can';不要让FirestoreRecyclerAdapter显示项目,android,firebase,google-cloud-firestore,android-recyclerview,firebaseui,Android,Firebase,Google Cloud Firestore,Android Recyclerview,Firebaseui,我正在更新我的应用程序以使用Firebase的Firestore数据库。我正在努力让应用程序显示从数据库检索到的数据。数据检索正常,但未显示。通过设置断点,我已经确定ViewHolder在任何时候都不会绑定到适配器 数据以片段形式显示。片段布局是(我去掉了不相关的东西,比如填充、大小等): 调用了ChartListAdapter构造函数,但从未调用onBindViewHolder和onCreateViewHolder,也从未访问过ChartViewHolder。我漏了一行代码吗?还是完全错了?我

我正在更新我的应用程序以使用Firebase的Firestore数据库。我正在努力让应用程序显示从数据库检索到的数据。数据检索正常,但未显示。通过设置断点,我已经确定ViewHolder在任何时候都不会绑定到适配器

数据以片段形式显示。片段布局是(我去掉了不相关的东西,比如填充、大小等):


调用了ChartListAdapter构造函数,但从未调用onBindViewHolder和onCreateViewHolder,也从未访问过ChartViewHolder。我漏了一行代码吗?还是完全错了?我对Adapter和RecyclerViews不太熟悉,因此我发现很难把它们放在一起。

您需要添加以下内容,要开始侦听数据,请调用
startListening()
方法。您可能希望在
onStart()
方法中调用此函数。在调用
startListening()
之前,确保已完成读取数据所需的任何身份验证,否则查询将失败:

@Override
protected void onStart() {
super.onStart();
adapter.startListening();
}
更多信息请点击此处:


对于那些从谷歌来到这里的人,请在选项上设置生命周期所有者,以便自动调用开始/停止侦听

FirestoreRecyclerOptions<Chart> recyclerOptions = FirestoreRecyclerOptions.Builder<Chart>()
            .setQuery(mChartsQuery, Chart.class)
            .setLifecycleOwner(this)
            .build();
FirestoreRecyclerOptions recyclerOptions=FirestoreRecyclerOptions.Builder()
.setQuery(mChartsQuery,Chart.class)
.setLifecycleOwner(此)
.build();
public class ChartListAdapter
        extends FirestoreRecyclerAdapter<Chart, ChartViewHolder> {

    public ChartListAdapter(FirestoreRecyclerOptions recyclerOptions) {
        super(recyclerOptions);

    }

    @Override
    protected void onBindViewHolder(ChartViewHolder holder, int position, Chart model) {
        holder.setChartName(model.getName());

        // Bind Chart to ViewHolder
        holder.bindToChart(model);
    }

    @Override
    public ChartViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext())
                .inflate(R.layout.item_chart, parent, false);

        return new ChartViewHolder(view);
    }
}
public class ChartViewHolder extends RecyclerView.ViewHolder {

    private TextView chartNameView;
    private String chartKey;

    public ChartViewHolder(View itemView) {
        super(itemView);

        chartNameView = itemView.findViewById(R.id.chart_name);
    }

    public void setChartName(String chartName) {
        chartNameView.setText(chartName);
    }

    public void bindToChart(Chart chart) {
        chartKey = chart.getKey();
        chartNameView.setText(chart.getName());
    }

    public String getChartKey() {
        return chartKey;
    }
}
@Override
protected void onStart() {
super.onStart();
adapter.startListening();
}
FirestoreRecyclerOptions<Chart> recyclerOptions = FirestoreRecyclerOptions.Builder<Chart>()
            .setQuery(mChartsQuery, Chart.class)
            .setLifecycleOwner(this)
            .build();