接口实现的类不一样,监听对象动作不一样(接口让一个对象有不同的行为)
监听item项就要设置一个监听接口
public interface OnItemClickListener {
void onItemClick(int position);
}
在holder中写个设置监听方法
public void setItemClickListener(OnItemClickListener listener) {
mClickListener = listener;
}
监听的行为
mHomeAdaper.setOnItemClickListener(new HomeAdapter.OnItemClickListener() {
@Override
public void onItemClick(View view, int position) {
Toast.makeText(RecyclerViewActivity.this, "点击第" + (position + 1) + "条", Toast.LENGTH_SHORT).show();
}
}
}
行为发生的地方
private class HomeHolder extends RecyclerView.ViewHolder{
private TextView mTextView;
private HomeHolder(View itemView) {
super(itemView);
mTextView = (TextView) itemView.findViewById(R.id.tv_item);
mTextView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mClickListener.onItemClick(getAdapterPosition());
}
});