RecyclerView删除item和接口回调

Activity中的接口回调:

  1. //      调用按钮返回事件回调的方法  
  2.         honmeAdapter.buttonSetOnclick(new HomeAdapter.ButtonInterface() {  
  3.             @Override  
  4.             public void onclick(View view, int position) {  
  5.                 Toast.makeText(MainActivity.this"点击条目上的按钮"+position, Toast.LENGTH_SHORT).show();  
  6.             }  
  7.         });  

Activity中的删除item操作:

recycleView_adapter.removeData(position);

Adapter中的button接口:

 private ButtonInterface buttonInterface;  

  1.  /** 
  2.      *按钮点击事件需要的方法 
  3.      */  
  4.     public void buttonSetOnclick(ButtonInterface buttonInterface){  
  5.         this.buttonInterface=buttonInterface;  
  6.     }  
  7.   
  8.     /** 
  9.      * 按钮点击事件对应的接口 
  10.      */  
  11.     public interface ButtonInterface{  
  12.         public void onclick( View view,int position);  
  13.     }  
  1. holder.id_button.setOnClickListener(new View.OnClickListener() {  
  2.             @Override  
  3.             public void onClick(View v) {  
  4.                 if(buttonInterface!=null) {  
  5. //                  接口实例化后的而对象,调用重写后的方法  
  6.                     buttonInterface.onclick(v,position);  
  7.                 }  
  8.   
  9.             }  
  10.         });  

Adapter中的item中的删除操作:

// 删除数据
public void removeData(int position) {
    mDatas.remove(position);
    //删除动画
    notifyItemRemoved(position);
    notifyDataSetChanged();
}
holder.tv_item_delete.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {


        //删除自带默认动画
        removeData(position);

    }
});

原创文章 47 获赞 34 访问量 3万+

猜你喜欢

转载自blog.csdn.net/xige1995/article/details/79466313