public
class
FriendsAdapter
extends
RecyclerView.Adapter<FriendsAdapter.MyViewHolder> {
private
Activity activity;
private
ArrayList<Friend> mFriendList;
private
FriendsAdapter.RecyclerItemClickListener listener;
private
FriendsAdapter.RecyclerItemLongClickListener listener2;
private
int
selectedPosition;
public
FriendsAdapter(FragmentActivity activity, ArrayList<Friend> mFriendList, RecyclerItemClickListener recyclerItemClickListener, RecyclerItemLongClickListener recyclerItemLongClickListener) {
this
.activity = activity;
this
.mFriendList = mFriendList;
this
.listener = recyclerItemClickListener;
this
.listener2 = recyclerItemLongClickListener;
}
@Override
public
FriendsAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent,
int
viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.friends_row, parent,
false
);
return
new
FriendsAdapter.MyViewHolder(v);
}
@Override
public
void
onBindViewHolder(MyViewHolder holder,
int
position) {
}
public
static
class
MyViewHolder
extends
RecyclerView.ViewHolder {
private
TextView red, grey;
@RequiresApi
(api = Build.VERSION_CODES.LOLLIPOP)
public
MyViewHolder(View itemView) {
super
(itemView);
red = (TextView)itemView.findViewById(R.id.red);
grey = (TextView)itemView.findViewById(R.id.grey);
}
public
void
bind(
final
Friend friends,
final
FriendsAdapter.RecyclerItemClickListener listener) {
itemView.setOnClickListener(
new
View.OnClickListener() {
@Override
public
void
onClick(View v) {
listener.onClickListener(friends, getLayoutPosition());
}
});
}
public
void
bind2(
final
Friend friends,
final
FriendsAdapter.RecyclerItemLongClickListener listener2) {
itemView.setOnLongClickListener(
new
View.OnLongClickListener() {
@Override
public
boolean
onLongClick(View v) {
red.setVisibility(View.VISIBLE);
grey.setVisibility(View.VISIBLE);
red.setOnClickListener(
new
View.OnClickListener() {
@Override
public
void
onClick(View v) {
}
});
return
true
;
}
});
}
}
public
interface
RecyclerItemClickListener {
void
onClickListener(Friend friends,
int
position);
}
public
interface
RecyclerItemLongClickListener {
void
onLongClickListener(Friend friends,
int
position);
}
public
void
setSelectedPosition(
int
currentIndex) {
this
.selectedPosition = currentIndex;
}
public
int
getSelectedPosition() {
return
selectedPosition;
}
}