【安卓学习积累】Callback回调的使用

本文深入解析了回调机制在软件开发中的应用,介绍了回调的基本概念、实现步骤及如何在两个类之间进行数据动态传递。通过具体代码示例,展示了如何定义和使用回调函数,以及在特定事件发生时如何调用回调函数进行事件处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

callback是回调的意思,一般我们需要2个类需要相互调用,一个类把数据动态传递给另外一个类进行处理。

回调机制:

  1. 定义一个回调函数;
  2. 提供函数实现的一方在初始化的时候,将回调函数的函数指针注册给调用者;
  3. 当特定的事件或条件发生的时候,调用者使用函数指针调用回调函数对事件进行处理。

回调的步骤只需4步:

  1. 定义一个接口类,定义需要的方法。
  2. 声明一个接口类对象,提供一个设置类对象的方法。
  3. 创建接口类对象,重写其中的方法,把该类对象,通过对方的方法传递过去,对方就持有了该对象
  4. 对方通过该对象,调用该类对象重写的方法,把值传递过来,相当于set了一个值过来。
public class TestCallback {

    private Callback mCallback;

    public interface Callback {
        void onDoFirst();
        void onDoSecond();
    }

    public void setCallback(Callback callback) {
        mCallback = callback;
    }

    public void doSomething() {
        if (mCallback != null) {
            mCallback.onDoFirst();
            mCallback.onDoSecond();
        }
    }

}
public class MainActivity extends AppCompatActivity implements TestCallback.Callback{

    private static final String TAG = "MainActivity";
    private TestCallback mCallback;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mCallback = new TestCallback();
        mCallback.setCallback(this);
    }
    //点击事件
    public void onTouchCall(View v) {
        mCallback.doSomething();
    }

    @Override
    public void onDoFirst() {
        Log.e(TAG,"onDoFirst ++++方法执行");
    }

    @Override
    public void onDoSecond() {
        Log.e(TAG,"onDoSecond ++++方法执行");
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值