我想做与以下代码相反的事情:
RAC(self.activityIndicator, hidden) = RACObserve(self.playButton, selected);
选择播放按钮时,活动指示器应不隐藏。
使用ReactiveCocoa执行此操作的最佳方法是什么?
答案 0 :(得分:29)
有一个信号运算符,-not
。
RAC(self.activityIndicator, hidden) = [RACObserve(self.playButton, selected) not];
答案 1 :(得分:4)
map:
就是您所需要的。
RAC(self.activityIndicator, hidden) = [RACObserve(self.playButton, selected) map:^id(id value) {
return @(![value boolValue]);
}];
根据您从地图函数返回的内容,将信号转换为另一个信号。
答案 2 :(得分:0)
在较新版本的ReactiveCocoa / ReactiveSwift(v6.2.1)中,它看起来像这样:
var isButtonEnabled = MutableProperty<Bool>(true)
myImageView.reactive.isHidden <~ isButtonEnabled.negate()