接口回调
来源:互联网 发布:零基础学软件编程 编辑:程序博客网 时间:2024/06/05 15:49
写一个接口,在你需要调用的地方创建这个接口的一个实例,将这个实例拍到你需求的数据所在的类中去接受数据,然后通过接口中的抽象方法将你所需要的数据传递回来。可以分为内部接口和外部接口。
原理:抽象方法,在外面被调用时会调用实现这个抽象接口的具体方法,这就叫做接口回调
1.外部接口类型。
a.创建一个抽象类(接口类),创建抽象方法,将你需要的数据放在方法的参数中。
p:这里我们需要 一个图片数据和String 类型的数据
public interface OnBitmapCallBack {
public void OngetBitmap(Bitmap bitmap);
public void OnGetBitmapFailure(String str);
}
b.在需要这些数据的类中去(数据需求类)实现这个抽象方法,并将这个实例传到能够获取到数据的那个类中去。
p:写一个方法让这个接口实例实例能在获取数据的类中获取,可以是直接New 一个数据对象类 将这个接口实例直接传过去(详见方法二)。
public class NewsAdapter implements OnBitmapCallBack{
1.把接口的实例传递到数据对象类中去。
new Bitmap().setsetOnGetBitmapCallBack(this);
// 此处和监听点击事件类似。
2.重写接口中的抽象方法。
@Override
public void OngetBitmap(Bitmap bitmap) {
this.bitmap = bitmap;
}
@Override
public void OnGetBitmapFailure(String str) {
Toast.makeText(context, str, 0).show();
}
}
c 在装有数据的类(数据对象类)中通过传过来的这个接口的实例将数据传递过去。
创建需要获取的数据。
Bitmap bitmap= new bitmap();
String str = "我们需要获取的数据"
1.创建接口对象。
public class BitmapLoad {
private OnBitmapCallBack back ;
2.写一个方法将数据需求类的接口类实例获取到。
public void setOnGetBitmapCallBack(OnBitmapCallBack back){
this.back = back;
}
3.将需要的的数据传递过去。
p:通过传过来的这个实例调用这个实例的方法,从而将数据对象类中的数据参数传递到这个实例的具体方法中去,让数据需求类中数据接收到。
back.OngetBitmap(bitmap )//将方法回调回去
back.OnGetBitmapFailure(str)
}
2.内部接口类型。
a.数据需求类
public class NewsAdapter implements OnBitmapCallBack{
1.需要获取的对象
Bitmap bitmap;
String str;
2.创建内部接口
interface onGetBittmapCallBack {
public void OngetBitmap(Bitmap bitmap);
public void OnGetBitmapFailure(String str);
}
3.创建一个数据接收类让
BitmapLoad bitmap =new BitmapLoad(new onGetBittmapCallBack() {
@Override
public void OngetBitmap(Bitmap bitmap) {
this.bitmap = bitmap;
}
@Override
public void OnGetBitmapFailure(String str) {
this.str =str;
}
});)
b.数据对象类
public class BitmapLoad {
1.数据对象
Bitmap bitmap = new Bitmap();
String str = “我是需要被接收的数据”;
private onGetBittmapCallBack callBack;
2.通过构造方法获取接口对象
public bitmap(onGetBittmapCallBack callBack){
this.callBack =callBack;
}
3.通过接口对象调用抽象方法实现接口回调
callBack.OngetBitmap(bitmap)
callBack.OnGetBitmapFailure(String str)
}
0 0
- 接口,接口回调
- android 接口 接口回调
- 接口与接口回调
- 接口与实现:接口回调与接口多态
- Java 接口参数,接口回调.
- Fragment接口回调 三 使用接口
- 接口回调
- Java:接口回调
- 接口回调
- 什么是接口回调?
- 接口回调
- java 回调接口
- 接口回调
- 接口回调
- 回调接口
- java接口回调
- 什么是接口回调?
- 接口回调
- Oracle中的SID与SERVICE_NAME连接的区别
- 关于peoperty animation的理解
- PAT 1032Is It a Binary Search Tree (25)
- sqlite3编程&示例
- 关于android的零碎问题的整理
- 接口回调
- 将泛型集合类(List<T>)转换成DataTable,返回的DataTable所有列的数据类型为string型,且列顺序与字符串提供的字段顺序一致
- bzoj1037(dp 1A)
- android多线程实例及总结
- 关于Bound Services的常用方式
- redhat下给普通用户增加sudo命令,让他可以获得修改等权限
- 关于控件touch事件的整理
- 关于Android如何给传递线程初始化数据
- 突出一个简单粗暴!Android Activity泄漏问题解决方案