Created
September 19, 2016 11:30
-
-
Save mladenrakonjac/aa90e8a738ebb041962c77fd311f4193 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end | |
#parse("File Header.java") | |
public class ${NAME} extends | |
RecyclerView.Adapter<${NAME}.ViewHolder> { | |
private static final String TAG = ${NAME}.class.getSimpleName(); | |
private Context context; | |
private List<${LIST_MODEL}> list; | |
private OnItemClickListener onItemClickListener; | |
public ${NAME}(Context context, List<${LIST_MODEL}> list, | |
OnItemClickListener onItemClickListener) { | |
this.context = context; | |
this.list = list; | |
this.onItemClickListener = onItemClickListener; | |
} | |
public static class ViewHolder extends RecyclerView.ViewHolder { | |
// Todo Butterknife bindings | |
public ViewHolder(View itemView) { | |
super(itemView); | |
ButterKnife.bind(this, itemView); | |
} | |
public void bind(final ${LIST_MODEL} model, | |
final OnItemClickListener listener) { | |
itemView.setOnClickListener(new View.OnClickListener() { | |
@Override | |
public void onClick(View v) { | |
listener.onItemClick(getLayoutPosition()); | |
} | |
}); | |
} | |
} | |
@Override | |
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { | |
Context context = parent.getContext(); | |
LayoutInflater inflater = LayoutInflater.from(context); | |
View view = inflater.inflate(R.layout.${item_layout}, parent, false); | |
ButterKnife.bind(this, view); | |
ViewHolder viewHolder = new ViewHolder(view); | |
return viewHolder; | |
} | |
@Override | |
public void onBindViewHolder(ViewHolder holder, int position) { | |
${LIST_MODEL} item = list.get(position); | |
//Todo: Setup viewholder for item | |
holder.bind(item, onItemClickListener); | |
} | |
@Override | |
public int getItemCount() { | |
return list.size(); | |
} | |
public interface OnItemClickListener { | |
void onItemClick( int position); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment