java - iOS 中的事件总线等效项

标签 java ios objective-c swift

听说过java'发布-订阅'风格的组件间通信,不需要组件明确地知道彼此,这就是事件总线。似乎使用事件总线我们可以很容易地在不同的类之间进行通信,并且需要更少的代码.我知道 iOS 中的 NSNotifications 也是这样做的。 NSNotification 在这里不是替代品。除了委托(delegate)模式之外,请告诉我什么是 iOS 中的一个好的解决方案,它可以很好地替代 EventBus 进行类间通信。?

最佳答案

Swift 你可以使用 SwiftEventBus .这只是一个不错的wrapper around NSNotificationCenterDispatchQueue .

注册一个事件:

SwiftEventBus.onMainThread(target, name: "someEventName") { result in
    // UI thread
    // Do something when the event occurr
}

触发一个事件:

SwiftEventBus.post("someEventName")

如果您需要自定义它,source code 简短清晰并且容易理解。

关于java - iOS 中的事件总线等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30906578/

相关文章:

java - 如何制作一个像回收站一样的Android应用程序?

ios - 为什么我在向 Apple 提交应用程序时遇到这么多麻烦?

如果方向改变,ios 处理parentViews

ios - 无法订阅 pubnub channel (错误 107)

ios - Web 服务后端 iOS 应用程序的控制流

java - 恒星支付查询

java - 如何在 IntelliJ 上运行外部构建的项目?

java httpservlet getparameter 从 html 返回 null

ios - 使用触摸移动 SceneKit 中的节点

iphone - 以编程方式检测 ScrollView 外的触摸