我个人使用了一个EventBus库(比如 这个 )以相对干净的方式实现这一目标。这将是我的第一个建议。
的 保持在Android框架内: 强>
如果您的目标是在组件之间进行通信而不将它们紧密耦合,那么一种可能性 LocalBoadcastManager 。您基本上可以重现EventBus的功能,但它使用起来更麻烦/更不方便:
LocalBoadcastManager
BroadcastReceiver
IntentFilter
Intent
您还可以构建一个准EventBus。接收消息的任何组件都将实现该消息的接口,并使用某些Singleton类注册自己。任何发送消息的人都会调用Singleton的方法,然后迭代任何已注册的组件来传递消息。