使用EventBus解决Activity生命周期使用问题
2015-06-18 13:14
323 查看
0x0问题概述
假设有三个Android的Activity类,分别为类A、类B、类C,在类A中通过startActivityForResult启动类B,类B通过startActivity启动类C,我希望由类C带回数据给类A,并且类A不重新绘制画面。怎么操作呢?0x1解决方式
我通过EventBus的发布订阅机制,完美解决这个问题。当然这个问题,不乏其他解决方法,但是我认为这个方式是比较便捷的一种。0x2求解过程
下载EventBus源码:https://github.com/greenrobot/EventBus
工程中添加EventBus
使用EventBus3步骤
EventBus in 3 steps Define events: public class MessageEvent { /* Additional fields if needed */ } Prepare subscribers: eventBus.register(this); public void onEvent(AnyEventType event) {/* Do something */}; Post events: eventBus.post(event);
在本例中
在onCreate中注册总线,在onDestory中反注册总线,
@Subscribe public void onEventMainThread(UriChangeEvent event) {
Log.i(“ellee”,event.getPath);
}
关于@Subscribe,我并未在使用文档上看到必须要加这个,不过我发现不加这个反而程序无法运行。
相关文章推荐
- ocx中fireevent注意要点
- git常用命令操作
- SQLite的简单应用
- H+ Se7en WebUI
- Yii2-admin RBAC权限管理的实现
- 推荐101本值得读的SAT英文小说
- 动态规划问题
- WEB IM
- 《大道至简----软件工程实践者的思想》阅读笔记二
- shopnc b2b2c如何开启伪静态??
- Prim算法求最小生成树
- 关于const char*和char*、const char** 和char** 赋值问题
- HDU - 3339 In Action (最短路Dijkstra+01背包)
- linux shell 自定义函数(定义、返回值、变量作用域)介绍
- 建造者模式
- 12563 - Jin Ge Jin Qu hao
- 在WIN7下安装运行mongodb
- GRE写作论证论据素材大全—社会发展的三大理论
- 数据库索引的实现原理
- [Swust OJ 404]--最小代价树(动态规划)