回调就是外部设置一个方法给一个对象, 这个对象可以执行外部设置的方法, 通常这个方法是定义在接口中的抽象方法, 外部设置的时候直接设置这个接口对象即可.
例如给安卓添加按钮点击事件, 我们创建了OnClickListener接口 实现了其中的onClick方法, 在合适的时机(按钮被点击的时候) , 就会执行我们实现的onClick()方法. 这个方法就被回调了 .
1. 如何定义一个回调
a. 定义接口 : 在类中定义一个Interface, 并在接口中定义一个抽象方法;
b. 接口对象 : 在类中定义一个该接口的成员变量;
c. 设置对象 : 在类中定义一个公共的方法, 可以设置这个接口的对象, 调用该方法给接口对象成员变量赋值;
d. 调用方法 : 在合适的位置调用接口对象中的方法;
2. 代码实例
public class Employee {
/*
* 定义回调接口的成员变量
*/
private Callback mCallback;
/*
* 声明回调接口
*/
public interface Callback{
public abstract void work();
}
/*
* 设置回调接口对象成员变量
*/
public void setCallback(Callback callback) {
this.mCallback = callback;
}
/*
* 调用回调接口对象中的方法
*/
public void doWork() {
mCallback.work();
}
}
public class Boss {
private Employee employee;
/*
* 为Employee设置回调函数, 在这里定义具体的回调方法
*/
public void setCallback() {
employee.setCallback(new Employee.Callback() {
@Override
public void work() {
System.out.println("work");
}
});
}
}
分享到:
相关推荐
通过简单的自定义Dialog来理解接口回调callback机制
android接口回调详解、简单例子+复杂例子
通过JNI接口静态注册的native方法去创建线程,同时提供native回调Java的方法。通过这个框架可以去实现线程监听某一个状态,然后回调Java的方法(如发消息去通知顶层,实现显示)
例子中包含Android 应用程序和JNI的程序,实现充JNI到java层的回调
这个资源解决了我很长时间不理解回调是什么,怎么用。
相信很多初学android java的童鞋们都不太懂回调的意思,我当时也是这样的什么这个跳到那个然后又从那个调用这个的方法。。。弄得晕头转向的,今天我突然顿悟,于是写了一个回调例子与大家分享,由于手头分不多了,...
自定义view点击事件的接口回调
JNI callback Android
一个演示android中接口回调的demo
一个Callback的小示例
Java、Android 中常用的回调机制
实现了android 应用层和通过JNI层回调函数完成应用与native 本地代码之间的相互访问,对于了解JNI回调函数的用法有帮助
android回调机制的讨论,从实际例子解析android接口回调机制
Android中的回调最经典的就是点击事件设置监听(一般通过switch(v.getId()))这里写个最基本的 btn_rigister.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { ...
callBack 回调的范例 读取Android源码所得
开发环境 android studio 3.0.1 已支持 kotlin 1、定义接口 interface CallBack{ fun callBack(info : String) } 2、实现接口 : 为继承\实现 class CallBacks : CallBack{ override fun callBack(info : String...
此回调是您可以在onCreate函数中大量使用的应用程序的起点。 例如显示数据列表,开始播放音乐或视频等等 //start the oncreate callback @Override protected void onCreate(){ //inherit from super class ...
Android 本目录下的代码都是来自于我的...JniCallback 演示了如何从Native线程回调Java的函数,相关博文:Android开发实践:JNI层线程回调Java函数示例 JniBuffer 演示了各种从Java端到Native层的Buffer传递方法,相
重点是接口回调的应用,不是购物车实现。下载前请看清楚说明。 详情参看博客:http://blog.csdn.net/qq_20521573/article/details/52054774
* 同步回调public void goToPrintSyn(Callback callback, String text) {* 异步回调public voi