Created
December 27, 2016 17:46
-
-
Save gantonious/b587f767b051035a99373177302c81f2 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
package ca.antonious.sample.viewcells; | |
import android.view.View; | |
import android.widget.TextView; | |
import ca.antonious.sample.R; | |
import ca.antonious.sample.models.Task; | |
import ca.antonious.viewcelladapter.BaseViewHolder; | |
import ca.antonious.viewcelladapter.BindListener; | |
import ca.antonious.viewcelladapter.viewcells.GenericViewCell; | |
/** | |
* Created by George on 2016-11-17. | |
*/ | |
public class TaskViewCell extends GenericViewCell<TaskViewCell.TaskViewHolder, Task> { | |
public TaskViewCell(Task model) { | |
super(model); | |
} | |
@Override | |
public int getLayoutId() { | |
return R.layout.task_list_item; | |
} | |
@Override | |
public void bindViewCell(TaskViewHolder taskViewHolder) { | |
Task task = getModel(); | |
taskViewHolder.setTaskName(task.name); | |
taskViewHolder.setNumberOfCompletions(task.timesCompleted); | |
} | |
@BindListener(OnTaskClickListener.class) | |
public void bindOnClickListener(TaskViewHolder taskViewHolder, final OnTaskClickListener onTaskClickListener) { | |
taskViewHolder.setOnClickListener(new View.OnClickListener() { | |
@Override | |
public void onClick(View view) { | |
onTaskClickListener.onTaskClicked(getModel()); | |
} | |
}); | |
} | |
public interface OnTaskClickListener { | |
void onTaskClicked(Task task); | |
} | |
public static class TaskViewHolder extends BaseViewHolder { | |
private TextView taskNameTextView; | |
private TextView numberOfCompletionsTextView; | |
public TaskViewHolder(View itemView) { | |
super(itemView); | |
taskNameTextView = (TextView) itemView.findViewById(R.id.task_title); | |
numberOfCompletionsTextView = (TextView) itemView.findViewById(R.id.task_num_compeltions); | |
} | |
public void setTaskName(String taskName) { | |
taskNameTextView.setText(taskName); | |
} | |
public void setNumberOfCompletions(int numCompletions) { | |
numberOfCompletionsTextView.setText(String.valueOf(numCompletions)); | |
} | |
public void setOnClickListener(View.OnClickListener onClickListener) { | |
itemView.setOnClickListener(onClickListener); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment