在 App 内部大量使用 Intent 来传递事件是可以的吗?

我在做一个记账用的简单 app,为了解耦,我开始的做法是,只要数据变更了就用 Activity.sendBroadcast() 方法广播一个 Intent,然后在另外的地方用 Activity.registerReceiver() 方法注册侦听器,更新界面。这样做开始没什么问题,于是到后来就演变成了,点击一个列表项也广播,点击一个菜单项也广播,就像这样:

clipboard.png

我不知道这样做有什么问题没?

阅读 4.6k
4 个回答

建议使用eventBus 事件框架

同一个 Activity 就不要这么实现了,用 Handler

可以, 前提是广播是本地的, 就不会影响性能, 如果通过系统发送广播的话, Intent中数据会针对跨进程数据传递进行处理, 如果数据量大的话, 这个处理时间会很长

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题