Search code examples
androidandroid-glide

Unable to show image in recyclerView using glide


images are not showing in recycler view.

i am using glide to show images in recycler view

i have a list of images url and passing that list in adapter. very similar method i used in another activity it worked there... but its not working in this activity.

AnimeActivity.java

public class AnimeActivity extends AppCompatActivity {

RecyclerView rv;
List<String> adsImagesData  = new ArrayList<>();


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_anime);
    rv = findViewById(R.id.ads_recyclerview);
    rv.setLayoutManager(new LinearLayoutManager(this));


    getSupportActionBar().hide();

     adsImagesData.add("http://cdn.playbuzz.com/cdn/62b7af36-65b7-41aa-8db2-e34fd8a76acf/62c5efd3-fa55-464b-8ee5-9a3e2543c830.jpg");

     rv.setAdapter(new AdRecyclerViewAdapter(this , adsImagesData));

}
}

AdRecyclerViewAdapter.java

public class AdRecyclerViewAdapter extends RecyclerView.Adapter<AdRecyclerViewAdapter.MyViewHolder> {

private Context mContext;
private List<String> mData;

public AdRecyclerViewAdapter(Context mContext, List<String> mData) {
    this.mContext = mContext;
    this.mData = mData;
}

@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {

    View view;
    LayoutInflater layoutInflater = LayoutInflater.from(mContext);
    view = layoutInflater.inflate(R.layout.ad_row_item , parent , false);

    return new MyViewHolder(view);
}

@Override
public void onBindViewHolder(@NonNull MyViewHolder holder, int position) {

    Glide.with(holder.adImg.getContext()).load(mData.get(position)).into(holder.adImg);
}

@Override
public int getItemCount() {
    return mData.size();
}

public class MyViewHolder extends RecyclerView.ViewHolder {
    ImageView adImg;

    public MyViewHolder(@NonNull View itemView) {
        super(itemView);

        adImg = itemView.findViewById(R.id.ad_image_view);
    }
}
}

Solution

  • Try with

    RequestManager requestManager = Glide.with(mContext); 
    RequestBuilder requestBuilder = requestManager.load(mData.get(position));         
    requestBuilder.into(holder.adImg);