您的位置:首页 > 其它

两个Activity之间用接口回调进行通信

2017-03-22 09:09 1486 查看
因为刚接触的一个项目是蓝牙连接,需求是要在扫描界面点击条目进行连接
时,在跳转的另一个activity(姑且先叫它连接界面吧)上显示连接的过程,
也就是弹出一个dialog,所以就需要用接口回调的方式实现它.但是我之前
写接口回调没有在两个activity之间进行过接口回调,所以就自己想了下写
了下面一段代码.


先定义一个接口:

public interface ConnectionStateListener {
void onConnecting();
void onConnected();
void onDisConnected();
}


在定义一个接口管理类:

public class ConnectionStateListenerManager {
private ConnectionStateListener mListener;

private ConnectionStateListenerManager() {
}

private static final ConnectionStateListenerManager manager = new ConnectionStateListenerManager();

public static ConnectionStateListenerManager getInstance() {
return manager;
}

public void setConnectionStateListener(ConnectionStateListener mListener) {
this.mListener = mListener;
}

public void connected() {
if (mListener != null) {
mListener.onConnected();
}
}

public void connecting(){
if (mListener!=null){
mListener.onConnecting();
}
}

public void disconnected(){
if (mListener != null){
mListener.onDisConnected();
}
}
}


注意上面的接口管理类必须用单例模式,否则会空指针异常.

最后在扫描界面得到管理类对象,并调用其中的方法,在连接界面调用setConnectionStateListener()方法,并实现接口中的方法,这就可以了.

本人菜鸟一个,欢迎大家指正.谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  接口回调