美文网首页swift学习资料
基于 RxSwift 优雅实现点击事件

基于 RxSwift 优雅实现点击事件

作者: ImWiki | 来源:发表于2019-05-29 07:46 被阅读0次

    我们给一个控件动态增加点击事件总是觉得很麻烦,但是引入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
    
    })
    

    相关文章

      网友评论

        本文标题:基于 RxSwift 优雅实现点击事件

        本文链接:https://www.haomeiwen.com/subject/qdnstctx.html