android自3.0之后引入fragment之后,在开发项目的应用中,非常广泛,尤其是大项目。fragment相对activity,最大的好处就是轻,可以减少性能消耗,可扩展性也大大的增强。然后,它毕竟是依附于activity,那么,就不得不于activity互相通信。接下来,我简单的列举一下常用fragment通信的方式以及优势和缺点。
1、handler
优点:可以使用,代码简单。
缺点:容易产生耦合,代码冗余,不便维护,而且有能导致内存泄露。
2、广播
优点:可以使用,代码简单,一看就知道可以干什么。
缺点:广播有延时,系统组件,太重,广播有数量限制。
3、eventBus
优点:更容易使用,很多项目基本会用到。
缺点:基于反射,影响性能,不好维护,无法获取返回数据。
4、接口
优点:google推荐。
缺点:一对一接口,产生大量的代码冗余。
本框架是基于接口的思想,抽象出来。有了它,不用再针对每一个业务逻辑去编写相应的接口。