最近在研究基于安卓系统的语音识别和蓝牙通讯,过程中涉及到多个activity的交互。activity之间的交互数据可以由Intent完成,也可以借用Handler。如果用intent的话,一定要finish当前的activity UI,另一个activity响应,数据才得以传递,此时UI势必改变。而用handler是在一个activity中控制另一个activity活动的好方法。
在activity之间传递handler,有多种方法。最简单的是定义全局静态变量handler的方法,假设两个activity分别为MainActivity和OtherAcitivity,实现步骤如下。
1.先在MainAcitivity 中定义静态handler,重写handleMessage方法来处理收到发回的handler时该做的处理。
public static Handler myHandler = new Handler(){
@Override
public void handleMessage( Message msg ){
switch ( msg.what ){
case SEND_MESSAGE:
Log.e("TAG",