eventbus 的使用和注意事项

此文不介绍EventBus的基础使用,只说明使用的时候注意事项,这里记载我使用的时候遇到的问题

1、后注册,先发消息,那么使用粘性事件
2、可能有多处接受粘性事件,但是不同的事件不要使用同一个类来发送(事件存储在Map里,而key是类class),因为粘性事件使用后需要remove掉,而在remove的时候是通过class来进行删除的(粘性事件存在了map里,class做为key,所以根据map的特性,不同的事件如果使用同一个类,那么后面的事件会覆盖前面的事件)
3、接收消息方法需要注解,设置sticky为true
4、每一个注册接受粘性事件的方法,如果方法里的参数类型是一样的,那么每一处都会接收到事件。(非粘性事件也是如此)
5、注册的接收粘性的方法,不仅仅接收粘性事件,而且也接收非粘性事件(当然,发送非粘性事件时,也是使用同样的类???)
6、发送的事件类和注解的接收方法参数类型必须是同一个类

猜你喜欢

转载自blog.csdn.net/feixiangsmile/article/details/81294288