EventBus收不到消息问题【原创】
2014-11-22 00:00
1101 查看
项目中遇到的问题,做搜索商品的时候遇到,
1.情况是一个FragmentActivity包含四个碎片Fragment,在FragmentActivity中点击搜索按钮要向Fragment发送消息显示碎片界面并执行搜索任务,问题出在这,消息就是收不到,但是测试发现当界面显示后再发送,消息可以正常接收,最后到布局里找问题,尝试了下,把Fragment的根布局从GONE该为Invisible,发现消息可以正常接收,所以总结原因是EventBus消息接收前提是不能为GONE
2.在碎片中注册反注册EventBus时要传递一个上下文参数,习惯性写成getActivity()运行后报错,说我Fragment的父Activity没有对应接收消息的方法,原因就出来了,说明我父Activity注册了EventBus,但是我没有在父Activity写注册代码啊,原因当然是我刚才在碎片中注册时传递上下文参数时写成了getActivity(),getActivity()获取的是父Activity的上下文,所以导致给父Activity注册了,改成this,即可。
1.情况是一个FragmentActivity包含四个碎片Fragment,在FragmentActivity中点击搜索按钮要向Fragment发送消息显示碎片界面并执行搜索任务,问题出在这,消息就是收不到,但是测试发现当界面显示后再发送,消息可以正常接收,最后到布局里找问题,尝试了下,把Fragment的根布局从GONE该为Invisible,发现消息可以正常接收,所以总结原因是EventBus消息接收前提是不能为GONE
2.在碎片中注册反注册EventBus时要传递一个上下文参数,习惯性写成getActivity()运行后报错,说我Fragment的父Activity没有对应接收消息的方法,原因就出来了,说明我父Activity注册了EventBus,但是我没有在父Activity写注册代码啊,原因当然是我刚才在碎片中注册时传递上下文参数时写成了getActivity(),getActivity()获取的是父Activity的上下文,所以导致给父Activity注册了,改成this,即可。
相关文章推荐
- Eventbus接收不到消息问题
- EventBus收不到消息问题解决记录
- Activemqcpp 在接收设置了TTL的消息时候,出现receive timeout接收不到消息的问题
- ActiveMQ5.3的接收不到消息的问题
- 【原创】窗口消息处理问题
- spring与RabbitMQ整合 消费者消费不到消息 重启才能消费到的问题解决
- 基于mina服务器框架在android客户端接中文收不到消息以及发送不出中文的的问题
- openfire+spark+smack 即时通讯(问题篇一)离线消息获取不到
- 关于 微信发送被动回复音乐消息 用户接收不到的问题
- 解决系统下以管理员身份运行的程序接收不到拖放文件消息[WM_DROPFILES]问题的方法
- 关于百度云、极光的推送的问题,为什么控制台发送消息成功,而手机端接收不到消息
- 【原创】QTP中,录制web程序,录制不到表单、按钮等对象的一种问题解决方法
- C#开发微信公众号.NET平台MVC微信开发Demo解决收不到消息的问题
- 解决Win7系统下以管理员身份运行的程序接收不到拖放文件消息[WM_DROPFILES]问题的方法
- 使用eventbus接收不到消息
- Handle收不到消息的问题分析
- openfire+spark+smack 即时通讯(问题篇一)离线消息获取不到
- 基于mina服务器框架在android客户端接中文收不到消息以及发送不出中文的的问题
- [原创]hibernate更新后jdbc读取不到数据问题
- ActiveMQ5.3的接收不到消息的问题