package com.androcid.zomato.view.adapter; import android.content.Context; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import com.androcid.zomato.R; import com.androcid.zomato.util.CircleTransform; import com.androcid.zomato.util.MyFont; import com.squareup.picasso.Picasso; import java.util.List; public class LeaderBoardAdapter extends RecyclerView.Adapter<LeaderBoardAdapter.ViewHolder> { Context context; List<String> mList; MyFont myFont; //FOR NEW ACTIVITY private ClickListener clickListener; public LeaderBoardAdapter(Context context, List<String> list) { this.mList = list; this.context = context; myFont = new MyFont(context); } @Override public LeaderBoardAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View v = LayoutInflater.from(parent.getContext()) .inflate(R.layout.item_leaderboard, parent, false); return new ViewHolder(v); } @Override public void onBindViewHolder(LeaderBoardAdapter.ViewHolder holder, final int position) { holder.name.setText("User " + position); holder.location.setText("Location " + position); Picasso.with(context) .load(R.drawable.im_backdrop) .transform(new CircleTransform()) .placeholder(R.drawable.placeholder_200) .error(R.drawable.placeholder_200) .into(holder.image); holder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (clickListener != null) { clickListener.onItemClickListener(view, position); } } }); } @Override public int getItemCount() { return mList.size(); } public void setClickListener(ClickListener clickListener) { this.clickListener = clickListener; } public void refresh(List<String> list) { this.mList = list; notifyDataSetChanged(); } public interface ClickListener { public void onItemClickListener(View v, int pos); } public class ViewHolder extends RecyclerView.ViewHolder { ImageView image; TextView name; TextView location; public ViewHolder(View itemView) { super(itemView); image = (ImageView) itemView.findViewById(R.id.image); name = (TextView) itemView.findViewById(R.id.name); location = (TextView) itemView.findViewById(R.id.location); myFont.setAppFont((ViewGroup) itemView, MyFont.FONT_REGULAR); myFont.setFont(name, MyFont.FONT_BOLD); } } }