Android 接口回调机制
在android 中回调机制被大量使用。
比如,在Activity中定义了很多生命周期的不同状态要调用的方法,这些方法都是空实现,系统框架要调用,用户也要调用来实现。或者更直接的是按键点击的实现方法。
loginButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
明显,OnClickListener就是android 系统所约定好的接口,然后我们写的应用程序就是客户端,android 系统就是服务端。模型关系如下图所示:
以上可以看出,接口(系统框架)是系统提供的,接口的实现是用户实现的,这样可以达到接口统一,实现不同的效果。
系统在不同的状态“回调”我们的实现类,来达到接口和实现的分类。
example:
类A 类B
在类A :
public interface RemoveListener{
onRemove(BaseModel model);
}
声明接口变量:
private RemoveListener callback;
提供注册的方法 set
public void setListener(RemoveListener listener){
callback=listener
}
当满足一定情况 触发回调
listener.onRemove(item);
在类B:
向类A注册
B b=new B();
b.setListener(listener);
b.RemoveListener listener=new b.RemoveListener(
onRemove(BaseMode mode){
doSomething();
}
);
更多相关文章
- Android SqLite中insert()方法解析
- 如何使Android应用程序获取系统权限 来修改系统时间
- android设备调用usb外置摄像头方法及案例
- Android基础教程之-------Android中两种设置全屏的方法!!!
- Android:view常用属性和操作方法
- Android 的窗口管理系统 (View, Canvas, WindowManager)
- Android 系统字体
- 在android studio中用SQLiteOpenHelper()方法建立数据库
- Android中显示Dialog的方法