带有事件对象的 iOS 事件总线库?

标签 ios swift events

我们使用了 greenrobot 的 EventBus Android 开发中广泛使用的库,我们正在为 iOS 寻找类似的东西。看起来已经以 NSNotificationCenter 的形式内置了一种事件总线。 ,以及相当多的第三方解决方案,这些解决方案本质上是此功能的包装器,为方便起见添加了一些功能。

但是,我们更习惯于事件的概念是具有明确定义的成员变量的离散对象,以及面向对象的多态性的额外好处。到目前为止,我发现的大多数 iOS 库都让您传入任意事件名称和任意数据包,这对于我们的目的来说有点太松散了。

到目前为止,我发现的面向对象设计的唯一示例是 Tolo , 乍一看很不错,但大约三年没有更新,除了一些次要的文档细节。此外,考虑到它的年代,它仍然是用 Objective-C 编写的,如果我们需要在某个时候查看幕后情况,这可能会导致一些困难(我们非常致力于 Swift)。

还有其他我没有遇到过的选择吗?

最佳答案

没有理由不能创建一个特定的类作为 NSNotificationCenter 中的对象传递。许多示例在这方面确实是惰性的,obj-c 传统上是相当松散的类型,这可能解释了这一点。

使用某种常量作为事件名称也很常见(在比在线教程更大的项目中),如果使用 obj-c,可以是类常量或 #define

关于带有事件对象的 iOS 事件总线库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38646276/

相关文章:

iphone - 在 iOS 上使用 Cocoa 在后台进行 9 切片缩放/拉伸(stretch)

multithreading - 如何在执行后台任务时呈现 View Controller ?

.NET TreeView : How to prevent unchanged child nodes from being redrawn?

java - android等待服务器响应

javascript - 事件监听器、JavaScript

ios - 如何唯一识别ios设备

ios - URLSession 从 HTTP GET 请求返回空数组

ios - iMessage 应用程序视频消息音量不起作用

ios - UICollection NumberOfItemsInSection 向 vars 添加常量的问题

iphone - 整个应用程序中的静态 UIImage