RAC +MVVM
https://blog.csdn.net/capf_sam/article/details/60960530
https://blog.csdn.net/capf_Sam/article/details/60960615
http://www.cocoachina.com/ios/20170612/19500.html

//响应式 <ReactiveObjc.h>
[[XXX rac_signalForSelector] subscribeNext:^(RACTuple * x){}]; [self.searchText.rac_textSignal subscribeNext: ^(id text){ NSLog(@"%@", text); }]; //KVO <NSObject + RACKVOWrapper.h>
[XXX rac_observerKeyPath: options: observer: block:];
MMTableViewModel
MaterialViewModel
//响应式 <ReactiveObjc.h>
[[XXX rac_signalForSelector] subscribeNext:^(RACTuple * x){}];
//KVO <NSObject + RACKVOWrapper.h>
[XXX rac_observerKeyPath: options: observer: block:];
//
[xxx rac_valuesForKeyPath: observer:];
//监听事件
[[btn rac_singalForControlEvents:] subscribeNext:]
//通知
[[NSNotificationCenter defaultCenter]rac_addObserverForName: object:] subscribeNext:];
//textfield 输入监听
[_textField.rac_textSignal subscribeNext:^(NSString *x){}];
1.RACSignal:信号类
创建信号:冷信号
RACSingal *signal = [RACSignal createSignal:^()]
订阅信号:热信号 RACSubcriber-发送信号
取消订阅 RACDispose
2,RACSubject:可创建信号,也可发送信号
RAC 宏
// RAC:把一个对象的某个属性绑定一个信号,只要发出信号,就会把信号的内容给对象的属性赋值
// 给label的text属性绑定了文本框改变的信号
RAC(self.label, text) = self.textField.rac_textSignal;
// [self.textField.rac_textSignal subscribeNext:^(id x) {
// self.label.text = x;
// }];
RAC +MVVM的更多相关文章
- RAC & MVVM 学习资料整理
最后更新:2017-01-23 参考链接: MVVM奇葩说 MVVM 介绍 Model-View-ViewModel for iOS [译] 唐巧--被误解的 MVC 和被神化的 MVVM React ...
- 【iOS】小项目框架设计(ReactiveCocoa+MVVM+AFNetworking+FMDB)
上一个项目使用到了ReactiveCocoa+MVVM+AFNetworking+FMDB框架设计,从最初的尝试,到后来不断思考和学习,现在对这样一个整体设计还是有了一定了理解与心得.在此与大家分享下 ...
- iOS代码实践总结
转载地址:http://mobile.51cto.com/hot-492236.htm 最近一个月除了专门抽时间和精力重构之外,还有就是遇到需要添加功能的模块的时候,由于项目中的代码历史因素比较多,第 ...
- ReactiveCocoa的学习内容
ReactiveCocoa • 知识备用库:iOS10 collectionView以前是复用的,但是iOS10以后就要设置一个属性才可以复用. • C语言面向过程编程,OC面向对象编程 • 链式编程 ...
- iOS - CodeReview 代码评审
1.CodeReview Code Review 中文应该译作 "代码审查" 或是 "代码评审",这是一个流程,当开发人员写好代码后,需要让别人来 review ...
- ReactiveCocoa使用记录-网络登录事件
对于一个应用来说,绝大部分的时间都是在等待某些事件的发生或响应某些状态的变化,比如用户的触摸事件.应用进入后台.网络请求成功刷新界面等等,而维护这些状态的变化,常常会使代码变得非常复杂,难以扩展.而 ...
- iOS简历书写注意事项
1.个人信息模块 1)简历标题 2)姓名 性别 年龄 电话 邮箱 常驻地 学历 英语能力 工作年限 籍贯 专业 (突出优势) 注意:不要从招聘网站导出简历网站 2.求职意向 1)职位 地点 薪资 ...
- 【转】伟大的RAC和MVVM入门(一)
原文:http://www.sprynthesis.com/2014/12/06/reactivecocoa-mvvm-introduction/ 翻译自ReactiveCocoa and MVV ...
- [HMLY]7.iOS MVVM+RAC 从框架到实战
1.MVVM浅析 MVC是构建iOS App的标准模式,是苹果推荐的一个用来组织代码的权威范式,市面上大部分App都是这样构建的,具体组织模式不细说,iOS入门者都比较了解(虽然不一定能完全去遵守), ...
随机推荐
- linux 系统 cp: omitting directory 问题解决
在linux系统中复制文件夹时提示如下: cp: omitting directory `foldera/' 其中foldera是我要复制的文件夹名,出现该警告的原因是因为foldera目录下还存在目 ...
- sqli-labs(十八)
第五十五关:和上一关类似,只是拼凑的方法不一样,所以需要先判断后台是怎么拼凑的 分别输入id=1'--+ id=1"--+ id=') --+ ...
- 监控Tomcat
监控Tomcat 无论是使用Zabbix.还是jconsole等其他工具,当需要监控Tomcat时,需对Tomcat进行jmx配置.此处以Linux系统为例,配置Tomcat. 注意: 下文中出现的: ...
- Git安装及创建版本库
一.在Windows上安装Git 1.虽然用于开发的系统最好是用Mac或者Linux,但绝大多数新人都是用Windows进行开发.Windows系统上也有提供了Git(Windows版),下载地址:h ...
- python--教你做个最简单的tcp通信。。
TCP协议:建立在IP协议之上的,TCP协议,传输控制协议(英语:Transmission Control Protocol,缩写为 TCP)是一种面向连接的.可靠的.基于字节流的传输层通信协议,由I ...
- 并发工具CyclicBarrier
想想一下这样一个场景,有多个人需要过河,河上有一条船,船要等待满10个人才过河,过完河后每个人又各自行动. 这里的人相当于线程,注意这里,每个线程运行到一半的时候,它就要等待一个条件,即船满过河的条件 ...
- MVC中视图界面设置Checkbox
今天是六一儿童节,来谈谈Checkbox,前面的博客已经提到了关于单选.多选.反选.全选等问题的处理,这里作一下补充说明. 全选/反选 <td width="5%">& ...
- win10安装mongodb-win32-x86_64-2008plus-ssl-3.4.10-signed
1.下载mongodb在windows下的安装文件 首先去官网https://www.mongodb.com/download-center?jmp=nav#community下载安装文件.mongo ...
- Python 连接SQL Server数据库 - pymssql使用基础
1. 官方api http://www.pymssql.org/en/stable/ref/pymssql.html 我学习自这里
- C# 数值类型和无穷大
在c#语言中的数字有两个特性要了解.例如:任何数除以0所得的结果是无穷大,不在int long 和decimal类型的范围内.所以计算(一个数除以0会出错),但是在double和float类型中有一个 ...