【FastDev4Android框架开发】AndroidAnnnotations注入框架使用之第三方框架集成Otto事件总线(十四)

转载请标明出处: 

http://blog.csdn.net/developer_jiangqq/article/details/49530731
本文出自:【江清清的博客】

().前言:   

         前面我们已经对于AndroidAnnotations框架集成RoboGuice做了讲解,今天我们开始具体学习一下第三方框架集成Otto事件总线。Otto事件总线和我们经常使用Eventbus差不多。Otto 官网: http://square.github.io/otto/,Otto框架的主要功能是帮助我们来降低多个类之间的耦合度的(解耦)。

      FastDev4Android框架项目地址:https://github.com/jiangqqlmj/FastDev4Android 

().集成OttoAndroidAnnotations

dependencies {

  compile 'com.squareup:otto:1.3.8'

}

  •  使用@EBean来为事件总线创建一个单例类
  •  创建通过事件总线传输分发的事件类
  • 使用bus.post()来进行发送事件到事件总线中
  • 使用@Subscribe进行注解来获取发布的事件

下面的实例表示Fragment进行通知Activity标题发生更新:

// Declare the busas an enhanced bean
@EBean(scope =Scope.Singleton)
public class OttoBusextends BasicBus {
 
}
public classUpdateTitleEvent {
 
        public final String title;
 
        public UpdateTitleEvent(String title) {
                this.title = title;
        }
 
}

@EActivity(R.layout.hello_activity)
public classHelloAndroidActivity extends FragmentActivity {
 
        @Bean
        OttoBus bus;
 
        @Override
        protected void onCreate(BundlesavedInstanceState) {
               super.onCreate(savedInstanceState);
                bus.register(this);
        }
 
        @Override
        protected void onDestroy() {
                super.onDestroy();
                bus.unregister(this);
        }
 
    @Subscribe
    public void onUpdateTitle(UpdateTitleEventevent) {
        setTitle(event.title);
    }
 
}

@EFragment(R.layout.hello_fragment)
public classHelloFragment extends Fragment {
 
    int counter = 1;
 
    @Bean
    OttoBus bus;
 
    @Click
    void fragmentButtonClicked() {
        bus.post(newUpdateTitleEvent("Clicks: " + counter++));
    }
}
        到此位置关于 AndroidAnnotations 第三方框架集成之 Otto 集成已经全部讲解完成了。

同时FastDev4Android项目已经添加配置了AndroidAnnotations框架,后期的框架项目中也会主要使用这个DI框架,.欢迎大家去Github站点进行clone或者下载浏览:https://github.com/jiangqqlmj/FastDev4Android 同时欢迎大家starfork整个开源快速开发框架项目~

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值