Advertisement
Guest User

BlogRecyclerAdapter

a guest
Feb 16th, 2019
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.22 KB | None | 0 0
  1. package com.blindnews.kimh2.blindnews;
  2.  
  3. import android.content.Context;
  4. import android.support.annotation.NonNull;
  5. import android.support.v7.widget.RecyclerView;
  6. import android.view.LayoutInflater;
  7. import android.view.View;
  8. import android.view.ViewGroup;
  9. import android.widget.ImageView;
  10. import android.widget.TextView;
  11.  
  12. import com.bumptech.glide.Glide;
  13.  
  14. import java.util.List;
  15.  
  16. public class BlogRecyclerAdapter extends RecyclerView.Adapter<BlogRecyclerAdapter.ViewHolder> {
  17.  
  18.  
  19.     public List<BlogPost> blog_list;
  20.     public Context context;
  21.  
  22.  
  23.     public BlogRecyclerAdapter(List<BlogPost> blog_list) {
  24.         this.blog_list = blog_list;
  25.     }
  26.  
  27.  
  28.     @NonNull
  29.     @Override
  30.     public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
  31.  
  32.         View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.blog_list_item, parent, false);
  33.         context = parent.getContext();
  34.         return new ViewHolder(view);
  35.     }
  36.  
  37.  
  38.     @Override
  39.     public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
  40.  
  41.             String desc_data = blog_list.get(position).getBody();
  42.             String image_url = blog_list.get(position).getUrl();
  43.             String user_id = blog_list.get(position).getAuthor();
  44.             String time = blog_list.get(position).getDate();
  45.             String subTitle = blog_list.get(position).getSubTitle();
  46.             String title =  blog_list.get(position).getTitle();
  47.  
  48.             holder.setBlogImage(image_url);
  49.             holder.setDescText(desc_data);
  50.             holder.setAuthor(user_id);
  51.             holder.setTime(time);
  52.             holder.setSub(subTitle);
  53.             holder.setTitle(title);
  54.  
  55.  
  56.  
  57.     }
  58.  
  59.     @Override
  60.     public int getItemCount() {
  61.         return blog_list.size();
  62.     }
  63.  
  64.     public class ViewHolder extends RecyclerView.ViewHolder {
  65.  
  66.  
  67.         private View mView;
  68.         private TextView descView;
  69.         private TextView authorView;
  70.         private TextView subView;
  71.         private TextView titleView;
  72.         private ImageView blogImageView;
  73.         private TextView timeView;
  74.  
  75.         public ViewHolder(View itemView) {
  76.             super(itemView);
  77.  
  78.             mView = itemView;
  79.  
  80.         }
  81.  
  82.         public void setDescText(String descText){
  83.             descView = mView.findViewById(R.id.blog_desc);
  84.             descView.setText(descText);
  85.         }
  86.  
  87.         public void setBlogImage(String downloadUri) {
  88.             blogImageView = mView.findViewById(R.id.blog_image);
  89.             Glide.with(context).load(downloadUri).into(blogImageView);
  90.         }
  91.  
  92.         public void setAuthor(String author) {
  93.  
  94.             authorView = mView.findViewById(R.id.blog_user_name);
  95.             authorView.setText(author);
  96.  
  97.         }
  98.  
  99.         public void setTime(String time) {
  100.             timeView = mView.findViewById(R.id.blog_date);
  101.             timeView.setText(time);
  102.         }
  103.  
  104.         public void setSub (String sub) {
  105.             subView = mView.findViewById(R.id.blog_subtitle);
  106.             subView.setText(sub);
  107.         }
  108.  
  109.         public void setTitle (String title) {
  110.             titleView = mView.findViewById(R.id.blog_title);
  111.             titleView.setText(title);
  112.         }
  113.     }
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement