寫一個(gè)要接口還可以用方法進(jìn)行傳參數(shù)哦
public interface Mtvbaidu{
void onclick();
}
把接口在適配器設(shè)置全局的
private Mtvbaidu myItemClick;
在點(diǎn)擊方法中調(diào)用
mTvbaiduitemmv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
myItemClick.onclick();
}
});
寫一個(gè)適配器的點(diǎn)擊事件
public void setOnclick(Mtvbaidu mtvbaidu){
myItemClick=mtvbaidu;
}
在外面設(shè)置就行了
mBaiduAdapter = new BaiduAdapter(BaiduActivity.this, musicNext);
lvBaiduRecord.setAdapter(mBaiduAdapter);
mBaiduAdapter.setOnclick(new BaiduAdapter.Mtvbaidu() {
@Override
public void onclick() {
}
});
總代碼
在適配器設(shè)置接口
private MyItemClick myItemClick;
public interface MyItemClick{
void onItemClick(View view, int postion);
}
public void setOnItemClick(MyItemClick myItemClick){
this.myItemClick = myItemClick;
}
然后在onBindViewHolder方法中設(shè)置itemview的點(diǎn)擊事件
holder.itemView.setOnLongClickListener(new View.OnClickListener() {
@Override
public boolean onClick(View v) {
myItemClick.onItemClick(v,position);
return true;
}
});
最后在Activity方法中進(jìn)行點(diǎn)擊事件
new一個(gè)適配器裹赴,用適配器調(diào)用點(diǎn)擊事件的接口
myAdapter.setOnItemClick(new MyAdapter.MyItemClick() {
@Override
public void onItemClick(View view, final int postion) {
}
});
詳解圖
image.png
不為空調(diào)用接口方法
image.png