Guest User

Adapter

a guest
Jan 9th, 2021
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.42 KB | None | 0 0
  1. package com.example.eindopdrachtcmsapi;
  2.  
  3. import android.content.Context;
  4. import android.graphics.PorterDuffColorFilter;
  5. import android.view.LayoutInflater;
  6. import android.view.View;
  7. import android.view.ViewGroup;
  8. import android.widget.AdapterView;
  9. import android.widget.Button;
  10. import android.widget.TextView;
  11.  
  12. import androidx.annotation.NonNull;
  13. import androidx.recyclerview.widget.RecyclerView;
  14.  
  15. import java.util.ArrayList;
  16.  
  17.  
  18. public class ExampleAdapter extends RecyclerView.Adapter<ExampleAdapter.portfolioViewHolder>{
  19. private Context mContext;
  20. private ArrayList<ExampleItem> mExampleList;
  21. private onItemClickListener mListener;
  22. private onItemClickListener mListenerShare;
  23.  
  24. public interface onItemClickListener{
  25.  
  26. void onItemClick(int position);
  27. }
  28.  
  29. public void setOnClickListener(onItemClickListener listener, onItemClickListener listenerShare){
  30. mListener = listener;
  31. mListenerShare = listenerShare;
  32. }
  33.  
  34. public ExampleAdapter(Context context, ArrayList<ExampleItem> ExampleList) {
  35. mContext = context;
  36. mExampleList = ExampleList;
  37. }
  38.  
  39.  
  40. @Override
  41. public portfolioViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
  42. View v = LayoutInflater.from(mContext).inflate(R.layout.exampleitem, parent, false);
  43. return new portfolioViewHolder(v);
  44. }
  45.  
  46. @Override
  47. public void onBindViewHolder(portfolioViewHolder holder, int position) {
  48. ExampleItem currentItem = mExampleList.get(position);
  49.  
  50. String title = currentItem.getTitle();
  51. String body = currentItem.getBody();
  52. String link = currentItem.getLink();
  53.  
  54. holder.mTextViewTitle.setText(title);
  55. holder.mTextViewBody.setText(body);
  56. holder.mTextViewLink.setText(link);
  57.  
  58. }
  59.  
  60. @Override
  61. public int getItemCount() {
  62. return mExampleList.size();
  63. }
  64.  
  65. public class portfolioViewHolder extends RecyclerView.ViewHolder{
  66.  
  67. public TextView mTextViewTitle;
  68. public TextView mTextViewBody;
  69. public TextView mTextViewLink;
  70. public Button mButton;
  71.  
  72. public portfolioViewHolder(View itemView) {
  73. super(itemView);
  74. mTextViewTitle = itemView.findViewById(R.id.text_view_title);
  75. mTextViewBody = itemView.findViewById(R.id.text_view_body);
  76. mTextViewLink = itemView.findViewById(R.id.text_view_link);
  77. mButton = itemView.findViewById(R.id.share);
  78.  
  79. mButton.setOnClickListener(new View.OnClickListener() {
  80. @Override
  81. public void onClick(View v) {
  82. if (mListenerShare != null){
  83. int position = getAdapterPosition();
  84. if (position != RecyclerView.NO_POSITION) {
  85. mListenerShare.onItemClick(position);
  86. }
  87. }
  88. }
  89. });
  90. itemView.setOnClickListener(new View.OnClickListener() {
  91. @Override
  92. public void onClick(View v) {
  93. if (mListener != null){
  94. int position = getAdapterPosition();
  95. if (position != RecyclerView.NO_POSITION) {
  96. mListener.onItemClick(position);
  97. }
  98. }
  99. }
  100. });
  101. }
  102. }
  103. }
Add Comment
Please, Sign In to add comment