RXSwift的一些基本交互(OC,Swift,RXSwift对比)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RXSwift的一些基本交互(OC,Swift,RXSwift对比)相关的知识,希望对你有一定的参考价值。

参考技术A 以下主要是swift的一些基本交互,对比OC,Swift,RXSwift的写法,感受RX的牛逼之处。。。
所有的控件的UI创建和布局不做展示,自己敲0.0
刚刚接触swift,如有不对,各位请不吝赐教。
首先定义 let disposeBag = DisposeBag() 这是一个RXSwift的内存回收

1.基本的网络请求
OC中的写法:

Swift的写法:

RXSwift中的写法:

2.timer定时器
OC中的写法:

Swift的写法:

RXSwift中的写法:
RX中的timer和OC不一样,rx中的timer是一种自己定义的状态,进行不断的改变达到类似于OC的timer的效果,所以rx的timer不受runloop的影响。

3.通知
OC中的写法:

Swift的写法:

RXSwift中的写法:

4.手势
OC中的写法:

Swift的写法:

RXSwift中的写法:

5.scrollView的滑动事件响应
这个就写了一个RXSwift的写法,其他的费事没去实现:

6.textfiled的输入
OC中的写法:

Swift的写法:

RXSwift中的写法:

7.button响应
OC中的写法:

Swift的写法:

RXSwift中的写法:

8.KVO

这里首先需要创建一个Person类,定义一个监听的属性name,下面直接给出swift的Person创建

OC中的写法:

Swift的写法:

RXSwift中的写法:

最后给出一个点击空白处的touch事件响应方法

RxSwift

技术分享图片

 

 

详解 文档

Swift - RxSwift的使用详解1(基本介绍、安装配置)

Swift - RxSwift的使用详解2(响应式编程与传统式编程的比较样例)

Swift - RxSwift的使用详解3(Observable介绍、创建可观察序列)

Swift - RxSwift的使用详解4(Observable订阅、事件监听、订阅销毁)

Swift - RxSwift的使用详解5(观察者1: AnyObserver、Binder)

Swift - RxSwift的使用详解6(观察者2: 自定义可绑定属性)

Swift - RxSwift的使用详解7(Subjects、Variables)

Swift - RxSwift的使用详解8(变换操作符:buffer、map、flatMap、scan等)

Swift - RxSwift的使用详解9(过滤操作符:filter、take、skip等)

Swift - RxSwift的使用详解10(条件和布尔操作符:amb、takeWhile、skipWhile等)

Swift - RxSwift的使用详解11(结合操作符:startWith、merge、zip等)

Swift - RxSwift的使用详解12(算数&聚合操作符:toArray、reduce、concat)

Swift - RxSwift的使用详解13(连接操作符:connect、publish、replay、multicast)

Swift - RxSwift的使用详解14(其他操作符:delay、materialize、timeout等)

Swift - RxSwift的使用详解15(错误处理)

Swift - RxSwift的使用详解16(调试操作)

Swift - RxSwift的使用详解17(特征序列1:Single、Completable、Maybe)

Swift - RxSwift的使用详解18(特征序列2:Driver)

Swift - RxSwift的使用详解19(特征序列3:ControlProperty、 ControlEvent)

Swift - RxSwift的使用详解20(调度器、subscribeOn、observeOn)

Swift - RxSwift的使用详解21(UI控件扩展1:UILabel)

Swift - RxSwift的使用详解22(UI控件扩展2:UITextField、UITextView)

Swift - RxSwift的使用详解23(UI控件扩展3:UIButton、UIBarButtonItem)

Swift - RxSwift的使用详解24(UI控件扩展4:UISwitch、UISegmentedControl)

Swift - RxSwift的使用详解25(UI控件扩展5:UIActivityIndicatorView、UIApplication)

Swift - RxSwift的使用详解26(UI控件扩展6:UISlider、UIStepper)

Swift - RxSwift的使用详解27(双向绑定:<->)

Swift - RxSwift的使用详解28(UI控件扩展7:UIGestureRecognizer)

Swift - RxSwift的使用详解29(UI控件扩展8:UIDatePicker)

Swift - RxSwift的使用详解30(UITableView的使用1:基本用法)

Swift - RxSwift的使用详解31(UITableView的使用2:RxDataSources)

Swift - RxSwift的使用详解32(UITableView的使用3:刷新表格数据)

Swift - RxSwift的使用详解33(UITableView的使用4:表格数据的搜索过滤)

Swift - RxSwift的使用详解34(UITableView的使用5:可编辑表格)

Swift - RxSwift的使用详解35(UITableView的使用6:不同类型的单元格混用)

Swift - RxSwift的使用详解36(UITableView的使用7:样式修改)

Swift - RxSwift的使用详解37(UICollectionView的使用1:基本用法)

Swift - RxSwift的使用详解38(UICollectionView的使用2:RxDataSources)

Swift - RxSwift的使用详解39(UICollectionView的使用3:刷新集合数据)

Swift - RxSwift的使用详解40(UICollectionView的使用4:样式修改)

Swift - RxSwift的使用详解41(UIPickerView的使用)

Swift - RxSwift的使用详解42([unowned self] 与 [weak self])

Swift - RxSwift的使用详解43(URLSession的使用1:请求数据)

Swift - RxSwift的使用详解44(URLSession的使用2:结果处理、模型转换)

Swift - RxSwift的使用详解45(结合RxAlamofire使用1:数据请求)

Swift - RxSwift的使用详解46(结合RxAlamofire使用2:结果处理、模型转换)

Swift - RxSwift的使用详解47(结合RxAlamofire使用3:文件上传)

Swift - RxSwift的使用详解48(结合RxAlamofire使用4:文件下载)

Swift - RxSwift的使用详解49(结合Moya使用1:数据请求)

Swift - RxSwift的使用详解50(结合Moya使用2:结果处理、模型转换)

Swift - RxSwift的使用详解51(MVVM架构演示1:基本介绍、与MVC比较)

Swift - RxSwift的使用详解52(MVVM架构演示2:使用Observable样例)

Swift - RxSwift的使用详解53(MVVM架构演示3:使用Driver样例)

Swift - RxSwift的使用详解54(一个用户注册样例1:基本功能实现)

Swift - RxSwift的使用详解55(一个用户注册样例2:显示网络请求活动指示器)

Swift - RxSwift的使用详解56(结合MJRefresh使用1:下拉刷新)

Swift - RxSwift的使用详解57(结合MJRefresh使用2:上拉加载、以及上下拉组合)

Swift - RxSwift的使用详解58(DelegateProxy样例1:获取地理定位信息 )

Swift - RxSwift的使用详解59(DelegateProxy样例2:图片选择功能 )

Swift - RxSwift的使用详解60(DelegateProxy样例3:应用生命周期的状态变化)

Swift - RxSwift的使用详解61(sendMessage和methodInvoked的区别)

Swift - RxSwift的使用详解62 (订阅UITableViewCell里的按钮点击事件)

Swift - RxSwift的使用详解63 (通知NotificationCenter的使用)

Swift - RxSwift的使用详解64(键值观察KVO的使用)

 
 
 
 
 

以上是关于RXSwift的一些基本交互(OC,Swift,RXSwift对比)的主要内容,如果未能解决你的问题,请参考以下文章

Swift3.0和OC交互的最新用法

Swift高仿iOS网易云音乐Moya+RxSwift+Kingfisher+MVC+MVVM

Swift高仿iOS网易云音乐Moya+RxSwift+Kingfisher+MVC+MVVM

Swift高仿iOS网易云音乐Moya+RxSwift+Kingfisher+MVC+MVVM

OC与Swift API的交互!

RxSwift