在反应可可4中观察开关和触发动作如下,但在反应可可5中看不出来。

            mediaTypeSwich.rac_signalForControlEvents(.ValueChanged)
                .flattenMap { (sender:AnyObject!) -> RACStream! in
                    let segment = sender as UISegmentedControl
                    switch segment.selectedSegmentIndex {
                    case 0:
                        return self.photoSignal()

                    default:
                        return self.videoSignal()
                    }
                }
                .deliverOnMainThread()
                .subscribeNextAs{(photosFetchResult: PHFetchResult) in
                    self.fetchResult = photosFetchResult
                    self.mediaCollectionView.reloadData()
            }

我怎么做活性可可5呢
我想做的是
testSwitch.reactive.trigger(for: .valueChanged)
然后
获取控件启用状态并根据状态触发操作。

最佳答案

我不知道你的意思是什么,你想听听分段控制的索引值变化,不是吗?
你可以试试这些:

var selectedIndex = MutableProperty<NSInteger>(0)

segControl.reactive
        .selectedSegmentIndexes
        .map({ $0 }).observeValues({ log.debug($0) })

要监视更改的uiswitch值,可以尝试以下操作:
       let `switch` = UISwitch.init(frame: CGRect(x: 100, y: 100, width: 0, height: 0))
       self.view.addSubview(`switch`)
       `switch`.reactive.isOnValues.observeValues({ print($0) })

关于swift - 观察UISwich控制状态,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40916372/

10-12 14:35
查看更多