【问题标题】:RecyclerView doesn't load data in first launch using FirebaseRecyclerAdapterRecyclerView 在使用 FirebaseRecyclerAdapter 首次启动时不加载数据
【发布时间】:2017-05-16 17:20:35
【问题描述】:

我正在使用FirebaseRecyclerAdapterFragment 中填充RecyclerView

这是我的代码

mDatabase = FirebaseDatabase.getInstance().getReference();
myAdapter = new FirebaseRecyclerAdapter<Product, ProductViewHolder>(Product.class,
        R.layout.product_item,ProductViewHolder.class,
        mDatabase.child("clothes")) {
    @Override
    protected void populateViewHolder(ProductViewHolder viewHolder, Product model, int position) {
        mProgressBar.setVisibility(ProgressBar.INVISIBLE);
        viewHolder.name.setText(model.name);
        viewHolder.price.setText(model.price);
        Glide.with(getActivity()).load(model.imageUri).into(viewHolder.thumbnail);
        Log.d("NAME", model.name);
    }
};

recyclerView.setAdapter(myAdapter);

问题是,ProgressBar 在第一次启动时一直在移动,它从不隐藏,RecyclerView 从不显示自己,但如果我退出应用程序并再次启动,RecyclerView 会正确填充,即使屏幕自动锁定,我将其解锁,RecyclerView 已填充。我糊涂了。

【问题讨论】:

  • 代码段是否来自onCreateView

标签: java android firebase-realtime-database android-recyclerview firebaseui


【解决方案1】:

从您的代码中删除recyclerView.setHasFixedSize(true),然后检查代码现在是否正常工作。

为了消除ProgressBar,最好将可见性设置为GONE

mProgressBar.setVisibility(View.GONE);

有关更多信息,您可以查看此Github link。我认为这里报告了同样的问题。

【讨论】:

  • 谢谢!它快把我逼疯了! :)
  • 很高兴知道这有帮助!
【解决方案2】:

在您的 activity.xml 文件中,设置 ProgressBar 属性

android:visibility="invisible"

在您的 populateViewHolder 方法中,设置 mProgress.setVisibility(View.GONE); 将数据设置为 TextViews & ImageView 后

 protected void populateViewHolder(ProductViewHolder viewHolder, Product model, int position) {
        viewHolder.name.setText(model.name);
        viewHolder.price.setText(model.price);
        Glide.with(getActivity()).load(model.imageUri).into(viewHolder.thumbnail);
        mProgress.setVisibility(View.GONE);
        Log.d("NAME", model.name);
    }

【讨论】:

    猜你喜欢
    • 2018-04-06
    • 1970-01-01
    • 2022-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    相关资源
    最近更新 更多