如何在android中实现事件监听器

时间:2013-09-25 10:39:06

标签: android android-library

我有2个Android项目,例如Project AProject B

Project Alibrary项目,已在reference中添加为Project B

我从webserver中的Project A收到了一些数据。我只是想通知Project B已收到数据并且它应该开始一些过程。

我想我必须实现事件监听器,但我无法理解它的工作原理。

1 个答案:

答案 0 :(得分:1)

您可以使用android.os.handler

项目B

Callback callback = new Callback() {
    public boolean handleMessage(Message msg) {
        //update project B code
        int data=msg.arg1; //use bundle for more complex data
    }
};

在项目B中设置项目A时,为回调创建一个处理程序:

Handler handler = new Handler(callback);

通过编写一个setter方法将Handler传递给Project A,该方法将处理程序分配给项目A中声明的处理程序(例如Handler mHandler = null;)。

ProjectA.setHandler(handler);

在项目A中,当您需要更新B时,通过处理程序发送消息:

Message msg=Message.obtain();
int value=10; //whatever
msg.arg1=value; //or use a Bundle
mHandler.sendMessage(msg);