天天看點

RecyclerView的使用(四)——Item内部控件的點選事件

RecyclerView的使用(四)——Item内部控件的點選事件

有時 我們不僅需要Item的點選事件 我們還需要Item内部的某個控件的點選事件

實作:

一、 建立item内部點選接口

/**
 * item内部的删除監聽接口
 */

public interface ItemInnerDeleteListener {
    void onItemInnerDeleteClick(int position);
}

           

二、 Adpater類中

private ItemInnerDeleteListener mItemInnerDeleteListener;

 public void setOnItemDeleteClickListener(ItemInnerDeleteListener mItemInnerDeleteListener) {
        this.mItemInnerDeleteListener = mItemInnerDeleteListener;
    }
    
           

onBindViewHolder中

holder.qiangduo.setOnClickListener(new View.OnClickListener() { // 對某個元件設定點選事件 可以不為button
                    @Override
                    public void onClick(View v) {
                        mItemInnerDeleteListener.onItemInnerDeleteClick(position);
                    }
                });
           

**三、 Activity中 **

3.1 implements ItemInnerDeleteListener

3.2 initData()中

mAdapter.setOnItemDeleteClickListener(this);
           

**3.3 **

@Override
    public void onItemInnerDeleteClick(int position) {
        mAdapter.notifyItemRemoved(position);
        Toast.makeText(CRMListActivity.this,"點選成功!",Toast.LENGTH_SHORT).show();
    }