RxSwift 不适用于 UIButton

RxSwift not working with UIButton

我正在研究 RxSwift 并开始创建一些基础的。我添加了新按钮,但是 rx_tap 订阅不适用于按钮操作。下面是我的代码,请让我知道我做错了什么

    let button = UIButton(frame: CGRect(x: 10, y: 66, width: 100, height: 21))
    button.backgroundColor = UIColor.redColor()
    button.setTitle("Login", forState: UIControlState.Normal)

    let disposeBag = DisposeBag()
    button.rx_tap
        .subscribe { [weak self] x in
            self!.view.backgroundColor = UIColor.redColor()
    }
    .addDisposableTo(disposeBag)
    self.view.addSubview(button)

由于您 DisposeBag 的范围,您的订阅已立即取消。它被创建,然后超出范围并立即被释放。你需要把你的包放在某个地方。如果您正在使用视图控制器或类似的东西,您可以在那里创建一个 属性 并将其分配给它。