简单回调机制的建立主要分为下面几步:
1.写一个回调类,写出需要的构造方法
2.定义一个接口,里面写一个抽象方法,方法体(String data)为所需要回调的数据
3.定义一个设置接口的方法,里面得到接口对象
4.定义一个发送数据的方法,当调用这方法时,数据自动发送及接受
如下:
package com.lixu.huidiao;
public class SendData {
private OnSendDataListener mOnSendDataListener = null;
//1.写出所需要的构造方法
public SendData() {
}
//2.定义一个接口,里面写一个抽象方法,方法体(String data)为所需要回调得到的数据
public interface OnSendDataListener {
public void onAcceptData(String data);
}
//3.定义一个设置接口的方法,里面得到接口对象
public void setOnSendDataListener(OnSendDataListener mOnSendDataListener) {
this.mOnSendDataListener = mOnSendDataListener;
}
//4.定义一个发送数据的方法,当调用这方法时,数据自动发送及接受
public void send(String data) {
mOnSendDataListener.onAcceptData(data);
}
}
使用的时候,只需new出这个方法的对象,然后使用setOnSendDataListener()的方法得到监听,在调用send()方法即可触发监听得到回调的数据
如下代码:
package com.lixu.huidiao;
import com.lixu.huidiao.SendData.OnSendDataListener;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SendData mSendData = new SendData();
mSendData.setOnSendDataListener(new OnSendDataListener() {
@Override
public void onAcceptData(String data) {
Log.d("通过回调收到的数据", data);
}
});
mSendData.send("通过回调类对象调用send方法发送的数据");
}
}
结果如下: