I have a Recycler View with the Images loaded from the Internal Storage. I want to Highlight the selected item when clicked. I tried a lot of thing but it was not working. A
This solution is more of an interactive look like the tableView in IOS. It'll highlight then unhighlight the cells.
@Override
public void onBindViewHolder(Cell holder, final int position) {
if(requests != null) {
holder.setView(requests.get(position), context);
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View v) {
Logs.print("In OnClickListener", position + " selected");
}
});
holder.itemView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
Logs.print("In Touch Handler", "A press has started");
v.setSelected(true);
break;
case MotionEvent.ACTION_UP:
Logs.print("In Touch Handler", "A press has been completed");
v.setSelected(false);
break;
case MotionEvent.ACTION_CANCEL:
Logs.print("In Touch Handler", "gesture aborted");
v.setSelected(false);
break;
}
return true;
}
});
}
}