recyclelerView片段图像不使用firebase显示

问题描述 投票:0回答:1

如果我删除Glide图像代码它运行正常但添加图像运行错误,图像不会加载到片段

我想我得到了错误,因为片段,但我不明白它是什么

  public void onBindViewHolder(AuthorListAdapter.MyViewHolder holder, int position) {
    holder.name.setText(authorList.get(position).getName());
    Glide.with(context).load(authorList.get(position).getImageUrl()).into(holder.image);
}   

这是错误:

 java.lang.NullPointerException: You cannot start a load on a not yet attached View or a  Fragment where getActivity() returns null (which usually occurs when getActivity() is called before the Fragment is attached or after the Fragment is destroyed).
  at com.bumptech.glide.util.Preconditions.checkNotNull(Preconditions.java:27)
  at com.bumptech.glide.Glide.getRetriever(Glide.java:607)
  at com.bumptech.glide.Glide.with(Glide.java:638)
  at com.example.hardik.myapplication.AuthorListAdapter.onBindViewHolder(AuthorListAdapter.java:42)
  at com.example.hardik.myapplication.AuthorListAdapter.onBindViewHolder(AuthorListAdapter.java:22)
  at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:6508)
  at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:6541)
  at android.support.v7.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:5484)
  at android.support.v7.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:5750)
  at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5589)
  at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5585)
  at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2231)
  at android.support.v7.widget.GridLayoutManager.layoutChunk(GridLayoutManager.java:556)
  at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1518)
  at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:610)
  at android.support.v7.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:170)
  at android.support.v7.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3719)
  at android.support.v7.widget.RecyclerView.onMeasure(RecyclerView.java:3135)
  at android.view.View.measure(View.java:19759)
  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6124)
  at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464)
  at android.widget.LinearLayout.measureVertical(LinearLayout.java:758)
  at android.widget.LinearLayout.onMeasure(LinearLayout.java:640)
  at android.view.View.measure(View.java:19759)
  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6124)
  at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
  at android.view.View.measure(View.java:19759)
  at android.support.constraint.ConstraintLayout.internalMeasureChildren(ConstraintLayout.java:934)
  at android.support.constraint.ConstraintLayout.onMeasure(ConstraintLayout.java:973)
  at android.view.View.measure(View.java:19759)
  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6124)
  at android.support.design.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:719)
  at android.support.design.widget.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:91)
  at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:1361)
  at android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:789)
  at android.view.View.measure(View.java:19759)
  at android.support.v4.widget.DrawerLayout.onMeasure(DrawerLayout.java:1060)
  at android.view.View.measure(View.java:19759)
  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6124)
  at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
  at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:139)
  at android.view.View.measure(View.java:19759)
  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6124)
  at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464)
  at android.widget.LinearLayout.measureVertical(LinearLayout.java:758)
  at android.widget.LinearLayout.onMeasure(LinearLayout.java:640)
  at android.view.View.measure(View.java:19759)

任何帮助表示感谢谢谢

android firebase firebase-realtime-database firebaseui
1个回答
0
投票

试试这个

当在附加片段之前或在片段被销毁之后调用getActivity()时,问题本身就会发生。

因此,请检查getActivity()!= null并绑定图像视图

    if( getActivity()!= null ){

      Glide.with(getActivity()).load(authorList.get(position).getImageUrl()).into(holde
           r.image);
    }


    if( getActivity() != null ){

      Glide.with(getActivity()).load(authorList.get(position).getImageUrl()).into(holde
           r.image);
    }
© www.soinside.com 2019 - 2024. All rights reserved.