这里有博客的源码:并且附带了效果图 学习MVP看了看 我就自己敲了一遍
https://blog.csdn.net/yin_chenglong/article/details/80563943
看完呢我觉得有一个更简单的删除功能:
在adapter中定义一个方法:
public void delete(int position){
if (list.size() > 0){
list.remove(position);
notifyItemRemoved(position);
}
}
再写一个接口回调:
public interface OnItemListener{
void clickItem(int position);
}
private OnItemListener mOnItemListener;
public void setOnItemListener(OnItemListener onItemListener){
mOnItemListener = onItemListener;
}
在之后就是在onBindViewHolder中调用接口中暴露的方法
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, final int position) {
holder.text_title.setText(list.get(position).getTitle());
holder.text_delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mOnItemListener.clickItem(position);
}
});
}
最后在activity中调用:
adapter.setOnItemListener(new NewsAdapter.OnItemListener() {
@Override
public void clickItem(int position) {
adapter.delete(position);
adapter.notifyDataSetChanged();
}
});
一个小小的删除功能就ok了