Activity和fragment/service通信

转载 2016年08月28日 15:06:08

与service

1.Activity调用bindService (Intent service, ServiceConnection conn, int flags)方法,得到Service对象的一个引用,这样Activity可以直接调用到Service中的方法,如果要主动通知Activity,可以利用回调方法
2.Service向Activity发送消息,可以使用广播,当然Activity要注册相应的接收器。比如Service要向多个Activity发送同样的消息的话,用这种方法就更好 

与fragment

 1.handler

  • Fragment对具体的Activity存在耦合,不利于Fragment复用
  • 不利于维护,若想删除相应的Activity,Fragment也得改动
  • 没法获取Activity的返回数据
  • handler的使用个人感觉就很不爽(不知大家是否有同感)

 2.广播
  • 用广播解决此问题有点大材小用了,个人感觉广播的意图是用在一对多,接收广播者是未知的情况
  • 广播性能肯定会差(不要和我说性能不是问题,对于手机来说性能是大问题)
  • 传播数据有限制(必须得实现序列化接口才可以)  
 3.EvnetBus
  • EventBus是用反射机制实现的,性能上会有问题
  • EventBus难于维护代码
  • 没法获取Activity的返回数据

 4.接口

这种方案应该是既能达到复用,又能达到很好的可维护性,并且性能也是杠杠的。但是唯一的一个遗憾是假如项目很大了,Activity与Fragment的数量也会增加,这时候为每对Activity与Fragment交互定义交互接口就是一个很头疼的问题( 包括为接口的命名,新定义的接口相应的Activity还得实现,相应的Fragment还得进行强制转换
 http://www.tuicool.com/articles/NvI7Bjy


相关文章推荐

(4.3.1.3)【项目一】主体框架Fragment中Selector的使用与自定义button-shape

创建selector 部分需要设置可以被click 自定义button-shape创建selector <item android:drawable="@drawable/yuns

Android:activity,fragment和service之我见(准备更新)

工作刚开始接触Android项目,边学边做,不废话,本文纯为记录自己个人的学习成长。所以,想详细了解的请绕道! 1. activity: An activity is a single focused...
  • hgk324
  • hgk324
  • 2016-08-22 21:59
  • 1053

(4.3.1.2)【项目一】主体框架Fragment中启动Service与notification的使用

创建Service 生成notification 示例 注册Service 启动Service创建Servicepublic class MyService extends Service { ...

Eventbus 详解,Activity和fragment通讯,相互发送接收数据

EventBus,解决做fragment与activity的交互 。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递...

Android Service完全解析,关于服务你所需知道的一切(下)

在上一篇文章中,我们学习了Android Service相关的许多重要内容,包括Service的基本用法、Service和Activity进行通信、Service的销毁方式、Service与Threa...

Activity,Fragment,Service生命周期

额,这一篇拖了好久,自己在学习深一些的东西就把这一部分分享忘了。怎么说生命周期都是我们Android编程,可能不只是Android编程吧,很重要的东西。很值得写一下。之前想分享几篇别人写的不错的。不过...

Android复习之旅--Activity/Service/Fragment 生命周期

Activity/Service/Fragment的生命周期

fragment和activity之间通信

  • 2015-12-03 11:02
  • 2.99MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)