今天get一个小小的技能,
对于其他人来说应该是常用的技能,但是我可是今天才会的啊。还是借鉴别人 后看会的。
首先创建一个接口
private OnItemOnclick onItemOnclick;
接口必须是public
public interface OnItemOnclick {
void setOnclickItem(View view, int position);
}
public void OnItemOnclick(OnItemOnclick onItemOnclick) {
this.onItemOnclick = onItemOnclick;
}
在onBindViewHolder方法中队item进行点击事件
final ImageBean image = data.get(position);
((ItemAdapter) holder).imageView.setImageResource(image.img);
((ItemAdapter) holder).textView.setText(image.name);
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
switch (image.name){
case "dada":
Toast.makeText(context,"dadada",Toast.LENGTH_SHORT).show();
break;
case "dada1":
Toast.makeText(context,"dadada1",Toast.LENGTH_SHORT).show();
break;
}
}
});
另一种方法给item创建点击事件的 在activity中进行点击事件的响应 如下
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// if (mOnItemClick!=null){
// mOnItemClick.setItemOnclick(v,position);
// }
在activity中就是 利用的是postion位置的不同 对item进行点击事件的
adapter.setOnItemClick(new RecyclerAdapter.OnItemClick() {
@Override
public void setItemOnclick(View view, int postion) {
switch (postion){
case 0:
Toast.makeText(SecondActivty.this, "对不起,电话不能为空", Toast.LENGTH_SHORT).show();
break;
}
}
});