ITPub博客

首页 > IT职业 > IT生活 > Android 回调方法的实现

Android 回调方法的实现

IT生活 作者:abcjob 时间:2021-09-09 09:06:00 0 删除 编辑
原理

接口可以引用实现了它的类

假设有一个接口I A类实现接口 I可以去引用A时里面实现方法

B 里面有一个I的引用 调用 I的引用即是调用A里面的实现方法

那么,前提就是B里面要传入A类的

代码实现

接口ICallback

public interface ICallback{

    void callback();

}

实现类A

public class A implements I {

    @Override
    public void callback() {
        System.out.println("我实现了接口的方法");
    }

    public void callB() {
        B a = new B();       // B的实例
        a.setCallback(this);  // 传入A的实例到B中
        System.out.println("我是A类的callB方法,我要调用B类的callA方法");
        a.callA();   // 在callA()中调用A的方法
    }
}

B类

public class B {

    ICallback callback;

    public void setCallback(ICallback callback) {
        this.callback = callback;
    }

    public void callA() {
        System.out.println("我是B类的callA方法,我要回调A类的callback方法");
        callback.callback();
    }
}
实现

setCallback 可以转化为 setOnClickListener
callA() 可以看作为 onClick()
也就是在调用onClick()方法的时候,其实是在调用实现了OnClickListener 类的onClick()方法

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4798/viewspace-2799389/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-10-12

  • 博文量
    159
  • 访问量
    6868