搜索
android - EventBus注销是在传值的页面注销还是接收值的页面注销?
怪我咯
怪我咯 2017-04-18 09:18:04
[Android讨论组]

很久没有用了 发现 不知道在哪个页面注销了

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(3)
天蓬老师
  1. 官方DEMO是在onResume()注册和onPause()反注册. 但是这种机制, 可能不适应大部分的需求场景.

  2. 如果考虑在onCreate(...)注册和onDestroy()反注册, 那有一种情况就需要注意了:

如果一个Activity创建了多个实例时, 而EventBus.post(Event)出来的Event本应该只由顶层Activity实例接收, 那么这是就会出问题.

PHP中文网

在OnCreat里面注册,注册之前先判断注册过没。重复注册会报错。

在Destory里面反注册。去过在onPause里面反注册,页面不可见时,发出的刷新广播或者其他广播,接收不到的。顶层Activity中接收实例之后,你在View中直接写OnEvent也是可以响应的,所以注册之前先判断有没有注册过。里面要用this就行,不用Context。

天蓬老师

谁注册谁注销,register和unregister在同一个类里面最科学

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号