一个小工具,用于快速在 Objective-C 中实现多观察者模式
假设您有一个观察者协议(基本上等同于委托协议)
@protocol ObserverProtocol <NSObject>
- (void)somethingDidHappen:(NSString *)message more:(NSInteger)more;
@end
使用您的委托协议创建一个 PLXObservers 实例
PLXObservers <ObserverProtocol> *observers = (PLXObservers <ObserverProtocol>*)[[PLXObservers alloc] initWithObserverProtocol:@protocol(ObserverProtocol)];
添加/删除您喜欢数量的观察者(实现 PLXObservers)
[observers addObserver:myObserver1]
[observers removeObserver:myObserver2]
在 PLXObservers 实例上调用 ObserverProtocol 方法将自动转发到已注册的观察者
[observers somethingDidHappen:@"test" more:123]
Antoni Kedracki,[email protected]
Polidea
PLXObservers 在 MIT 许可下可用。查看 LICENSE 文件获取更多信息。