2013-11-26 65 views

回答

5

這將每次發送@YESself.recording的值更改爲YES,並且忽略任何NO S:

RACSignal *mySignal = [RACObserve(self, recording) ignore:@NO]; 

這將跳過初始值,無論它是NOYES,並且將發送的每隨後值(NOYES):

RACSignal *mySignal = [RACObserve(self, recording) skip:1]; 

可以實現更細粒度的CONTRO l ReactiveCocoa KVOs如何使用NSKeyValueObservingOptionNew僅在屬性設置爲新(不是初始)值時發送值:ReactiveCocoa KVOs如何使用:

RACSignal *mySignal = [self rac_valuesAndChangesForKeyPath:@"recording" 
                options:NSKeyValueObservingOptionNew 
                observer:self]; 
2

您是否試過使用skip:方法跳過最初的「NO」信號?