Objective c 来自NSSegmentedControl&x27的RAC信号;s selectedSegment属性

Objective c 来自NSSegmentedControl&x27的RAC信号;s selectedSegment属性,objective-c,macos,reactive-cocoa,nssegmentedcontrol,Objective C,Macos,Reactive Cocoa,Nssegmentedcontrol,NSSegmentedControl实例与ViewController绑定为 @property (weak) IBOutlet NSSegmentedControl *mySegmentedControl; 在viewDidLoad方法中,为NSSegmentedControl的selectedSegment属性创建(并订阅)信号: [RACObserve(self.mySegmentedControl, selectedSegment) subscribeNext:^(id x) {

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
而不是
selectedSegment
属性时,只要NSSegmentedControl的
hidden
状态发生更改,就会执行subscribeNext块

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


(这只是Mac的问题,iOS在UIControl及其子类上有一些漂亮的类别,似乎起到了作用)。

你看过关于RAC github repo的讨论吗?我做到了,这对我毫无帮助。这不是一个主要的线程问题,讨论讨论的是UIControl上定义的
rac\u signalForControlEvents
,而不是NSControl。