Guest User

Untitled

a guest
Feb 24th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.48 KB | None | 0 0
  1. package codingwithmitch.com.recyclerviewstaggered;
  2.  
  3. import android.content.Context;
  4. import android.support.v7.widget.RecyclerView;
  5. import android.util.Log;
  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. import android.widget.Toast;
  12.  
  13. import com.bumptech.glide.Glide;
  14. import com.bumptech.glide.request.RequestOptions;
  15.  
  16. import java.lang.reflect.Array;
  17. import java.util.ArrayList;
  18.  
  19. /**
  20. * Created by User on 1/17/2018.
  21. */
  22.  
  23. public class StaggeredRecyclerViewAdapter extends RecyclerView.Adapter<StaggeredRecyclerViewAdapter.ViewHolder> {
  24.  
  25. private static final String TAG = "StaggeredRecyclerViewAd";
  26.  
  27. private ArrayList<String> mNames = new ArrayList<>();
  28. private ArrayList<String> mImageUrls = new ArrayList<>();
  29. private Context mContext;
  30.  
  31. public StaggeredRecyclerViewAdapter(Context context, ArrayList<String> names, ArrayList<String> imageUrls) {
  32. mNames = names;
  33. mImageUrls = imageUrls;
  34. mContext = context;
  35. }
  36.  
  37. @Override
  38. public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
  39. View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_grid_item, parent, false);
  40. return new ViewHolder(view);
  41. }
  42.  
  43. @Override
  44. public void onBindViewHolder(ViewHolder holder, final int position) {
  45. Log.d(TAG, "onBindViewHolder: called.");
  46.  
  47. RequestOptions requestOptions = new RequestOptions()
  48. .placeholder(R.drawable.ic_launcher_background);
  49.  
  50. Glide.with(mContext)
  51. .load(mImageUrls.get(position))
  52. .apply(requestOptions)
  53. .into(holder.image);
  54.  
  55. holder.name.setText(mNames.get(position));
  56.  
  57. holder.image.setOnClickListener(new View.OnClickListener() {
  58. @Override
  59. public void onClick(View view) {
  60. Log.d(TAG, "onClick: clicked on: " + mNames.get(position));
  61. Toast.makeText(mContext, mNames.get(position), Toast.LENGTH_SHORT).show();
  62. }
  63. });
  64.  
  65. }
  66.  
  67. @Override
  68. public int getItemCount() {
  69. return mImageUrls.size();
  70. }
  71.  
  72. public class ViewHolder extends RecyclerView.ViewHolder{
  73.  
  74. ImageView image;
  75. TextView name;
  76.  
  77. public ViewHolder(View itemView) {
  78. super(itemView);
  79. this.image = itemView.findViewById(R.id.imageview_widget);
  80. this.name = itemView.findViewById(R.id.name_widget);
  81. }
  82. }
  83. }
Add Comment
Please, Sign In to add comment