在Android 系统中 有太多的回调
列如按钮的单击事件:
tv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
1、定义接口
package com.myCallback;
/**
*
* Adapter 类
*
*
*/
public class TodayJobdapter {
String name = "张三";
boolean isBaoming = false;
public TodayJobdapter(Icall icall) {
icall.call(name);
icall.baoming(isBaoming);
icall.pinjiang();
}
/**
*
* 定义的接口 以及方法
*
*/
public interface Icall {
void call(String name);
void baoming(boolean isBaoming);
void pinjiang();
}
}
2、根据adapter中传来的值处理相应的操作
package com.myCallback;
import com.myCallback.TodayJobdapter.Icall;
/**
* 处理 Adapter类中的接口
*
*
*/
public class Todayjob {
public static void main(String[] args) {
new TodayJobdapter(new Icall() {
@Override
public void call(String name) {
System.out.println("name===" + name);
}
@Override
public void baoming(boolean isBaoming) {
System.out.println("baoming===" + isBaoming);
}
@Override
public void pinjiang() {
System.out.println("评价");
}
});
}
}
个人理解:
1、正常是从Activity 中传值到Adapter,然后处理相应的操作;
例如 xxxAdapter mAdapter=new xxxAdapter("张三","男");在xxxAdapter中 setName(name);
2、从xxxAdapter传值到Activity处理xxxAdapter中相应的事件的时候就用到了自定义的回调函数了(上面的例子);