andorid 回调的理解
使用场景
项目中比如后端接口返回数据后需要更新ui数据,用户做了滑动、点击等操作的时候需要也需要更新ui界面或者给后端传入数据,这些场景会用到回调。
回调的使用
用到回调最重要的是首先明确要 “实现 ” 接口或者抽象类的哪个方法
1 先声明接口
你需要回调数据,那肯定需要写一个抽象类或者接口来放这个方法
2 写实现这个接口的类或者方法(也就是最关键的地方)
3 调用接口抽象方法
你已经实现了抽象方法,但是没有人调用这个抽象方法,你实现的方法就不能执行,就好像你买菜,你想在菜篮子上放入你需要的胡萝卜,蔬菜,猪肉,牛肉,你不付钱这些东西是不会在你的篮子里的,这个你给售货员钱售货员拿到你的钱这个动作就是回调了,可以理解他拿到钱的刹那间,就有回调了。
例子
在ListviewAdapter这个类中
private interface onItemClickListenter itemClickListener;
private interface onItemClickListener{
void onItemClick();
}
public void getItem(onItemClickListenter listener){
this.itemClickListener = listener;
}
在getView()方法中
itemClickListener.onItemClick();//触发回调
一般在mvc c层或者mvp p层 mvvm vm层 这样写 (关键代码)
listviewAdapter.getItem(new onItemClickListenter(){
public void onItemClick(){
//写回调的逻辑
}
});