我们给一个控件动态增加点击事件总是觉得很麻烦,但是引入RxSwift后就变得简单干净多了。
普通方式添加点击事件
普通方式必须先创建一个方法,然后才能把点击事件指向该方法
@objc func onHeadClick(_ recognizer: UITapGestureRecognizer){
print("点击")
}
let click = UITapGestureRecognizer(target: self, action: #selector(onHeadClick))
imageView.addGestureRecognizer(click)
imageView.isUserInteractionEnabled = true
RxSwift 方式
RxSwift 直接就可以在当前的代码栈即可完成代码的编写。
let click = UITapGestureRecognizer()
click.rx.event.asObservable().subscribe(onNext: { recognizer in
print("点击")
}).disposed(by: disposeBag)
imageView.addGestureRecognizer(click)
imageView.isUserInteractionEnabled = true
let button = UIButton()
button.rx.tap.subscribe(onNext: { recognizer in
})
网友评论