利用interface实现 Adapter中通知Activity刷新数据或者其他操作

*工作随记:
应用场景: 在adapter中通知activity更新数据(在adapter中对数据进行增删改等操作)
先写interface:
把要实现的方法写进去,Activity实现该接口(实现接口中的方法),将该接口当做参数传进Adapter
我在Adapter中对数据进行了修改,修改后要刷新数据,保证是最新数据;
interface:
/**
* adapter 通知 ui 更新数据(重新获取列表)
* 应用环境: 在列表里有删除,修改等操作,点击按钮需要刷新Activity的数据列表获取最新数据
*/
public interface IActivityUpData {
void upDataUi();
}
Activity:
public class Activity implements IActivityUpData {
……
@Override
public void upDataUi() {
//相应操作
}
}
Adapter:
private IActivityUpData dd;
public KLineRVUPAdapter(IActivityUpData dd){
this.dd=dd;
}
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
holder.aa.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dd.upDataUi();
}
});
}*
这样点击的时候就会调用接口中的方法,Activity实现了该接口中的方法,就会收到该消息,我们进行想要的操作就可以了;

你可能感兴趣的:(随记)