0

NSSegmentedControl 实例绑定到 ViewController 为

@property (weak) IBOutlet NSSegmentedControl *mySegmentedControl;

在 viewDidLoad 方法中,为 NSSegmentedControl 的 selectedSegment 属性创建(并订阅)一个信号:

[RACObserve(self.mySegmentedControl, selectedSegment) subscribeNext:^(id x) {
    NSLog(@"Next is called only once.");
}];

然而,subscribeNext 块只执行一次,就在信号创建之后,不会发送错误或完整的消息。

例如,当使用hidden而不是属性时,只要NSSegmentedControlselectedSegment的状态发生更改,就会执行 subscribeNext 块。hidden

这是 KVO 问题吗?我该如何解决这个问题,即如何从 NSSegmentedControl 的 selectedSegment 属性中生成 RACSignal?

(这只是一个 Mac 问题,iOS 在 UIControl 及其子类上有一些漂亮的类别似乎可以解决问题)。

4

0 回答 0