如何获取可观察布尔值的值?

时间:2017-10-20 19:08:40

标签: rx-swift

我创造了一个可观察的'要绑定(通过.bind)到UISwitch的布尔变量。
(传统的命令式模型会更容易;但我试图学习rxCocoa的细微差别)

我不知道该怎么做;我的逻辑基于一些使用Strings的示例代码。
我用过' just'因为我只对一个变量的切换值感兴趣。

如您所见,closure参数太模糊了。
我错过了什么?

enter image description here

2 个答案:

答案 0 :(得分:0)

试试这个:

public static boolean isSameDay(DateTime date1, DateTime date2){
    return date1.withTimeAtStartOfDay().isEqual(date2.withTimeAtStartOfDay());
}

然后,使用您的UISwitch:

var IOButton = Variable(false)
var isOn: Observable<Bool> = IOButton.asObservable()

更新1:

现在您可以isOn .bind(to: switch.rx.isOn ) .disposed(by: disposeBag) subscribe

isOn

答案 1 :(得分:0)

我相信我提出了解决方案:

scipy.interpolate.CubicSpline

&#39; a开关&#39;是UISwitch。
当我切换开关时,我得到以下内容:

// On/Off Switch

let onOffSwitch = Variable(true)

onOffSwitch.asObservable()
   .subscribe (onNext: { switchValue in
       print("This is new SwitchValue: \(switchValue)")
   }).disposed(by: disposeBag)

aSwitch.rx.isOn.bind(to: onOffSwitch)
   .disposed(by: disposeBag)

从这个范例我可以在闭包中插入一个self.func()而不是print()所以我可以在每个开关上做东西;与熟悉的@IBAction相比。