Otto的使用

otto基于Guava项目的Android支持库,如果你在Android程序开发的过程中想要不同的组件之间进行有效的通信可以使用这个库。通过otto库可以降低程序之间的耦合性(拷贝)


先对0tto进行初始化操作

import com.squareup.otto.Bus;
/**
 * 初始化AppBus的工具类
 * 
 * @author Administrator
 *
 */
public class AppBus extends Bus {
private static AppBus bus;
public static AppBus getInstance() {
if (bus == null) {
bus = new AppBus();
}
return bus;
}
}

----------------------------------------------

/**
 * 传递数据类型的工具类
 * 
 * @author Administrator
 *
 */
public class BusEventData {
public String content;
public int index;
public BusEventData(String content) {
this.content = content;
}
public BusEventData(int index) {
this.index = index;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
}

在需要发送消息的时候调用:(在发送消息的时候需要另外开启一个线程)

AppBus.getInstance().post(new BusEventData(index));

在需要接收的地方需要这两个方法:

@Subscribe
public void setContent(BusEventData data) {

//data可以获取到发送过来的参数

}


@Subscribe
public void onDataChange(String sss) {
}

在合适的地方对otto注册注销

AppBus.getInstance().register(this);

AppBus.getInstance().unregister(this);





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值