Skip to content

Instantly share code, notes, and snippets.

@imaNNeo
Last active September 23, 2017 08:52
Show Gist options
  • Save imaNNeo/6c160068008a5265878b4353f388a51b to your computer and use it in GitHub Desktop.
Save imaNNeo/6c160068008a5265878b4353f388a51b to your computer and use it in GitHub Desktop.
/**
* Programmer Iman Khoshabi
* iman.neofight@gmail.com
*/
public class AdapterHistory extends RecyclerView.Adapter<AdapterHistory.ViewHolderHistory>{
ArrayList<ResponseObjects.HistoryItem> mItems;
Context mContext;
OnAdapterViewClickedListener mListener;
public AdapterHistory(Context ctx,OnAdapterViewClickedListener listener){
mContext = ctx;
mItems = new ArrayList<>();
mListener = listener;
}
@Override
public ViewHolderHistory onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(mContext).inflate(R.layout.history_item,parent,false);
return new ViewHolderHistory(v,mListener);
}
@Override
public void onBindViewHolder(ViewHolderHistory holder, final int position) {
}
@Override
public int getItemCount(){
return mItems.size();
}
public ResponseObjects.HistoryItem get(int pos) {
return mItems.get(pos);
}
public static final class ViewHolderHistory extends RecyclerView.ViewHolder{
@BindView(R.id.iv_camera)
public AppImageView ivCamera;
OnAdapterViewClickedListener mListener;
public ViewHolderHistory(View itemView, OnAdapterViewClickedListener listener){
super(itemView);
ButterKnife.bind(this,itemView);
mListener = listener;
}
@OnClick(R.id.iv_camera)
void onCameraClicked(){
if(mListener!=null)
mListener.onAdapterViewClicked(ivCamera,this,getAdapterPosition());
}
}
}
mAdapter = new AdapterHistory(getActivity(), (v, vh, pos) -> {
AdapterHistory.ViewHolderHistory vhh = (AdapterHistory.ViewHolderHistory) vh;
if(vhh.ivCamera == v){
getPresenter().onHistoryImageClicked(mAdapter.get(pos));
}
});
/**
* Created by iman.
* iman.neofight@gmail.com
*/
public interface OnAdapterViewClickedListener {
void onAdapterViewClicked(View v, RecyclerView.ViewHolder vh, int pos);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment