ReactiveCocoa常用方法
//1 代替kvo
 [[self.redView rac_valuesForKeyPath:@"frame" observer:nil] subscribeNext:^(id x) {
     NSLog(@"修改了");
    }];
//2 监听事件
    [[self.btn rac_signalForControlEvents:(UIControlEventTouchUpInside)] subscribeNext:^(id x) {
     NSLog(@"按钮被点击");
    }];
    //3 代替通知
    [[[NSNotificationCenter defaultCenter] rac_addObserverForName:UIKeyboardDidShowNotification object:nil]subscribeNext:^(id x) {
     NSLog(@"%@",x);
    } ];
//4 监听文本框
    [[self.textFiled rac_textSignal]subscribeNext:^(id x) {
      NSLog(@"%@",x);
    }];
// 6.处理多个请求,都返回结果的时候,统一做处理.
    RACSignal *request1 = [RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber) {
//请求数据
    //AFN
    NSLog(@"请求热销模块");
    // 发送请求1
    [subscriber sendNext:@"发送请求1"];
    return nil;
    }];
RACSignal *request2 = [RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber) {
    NSLog(@"请求最新模块");
   // 发送请求2
    [subscriber sendNext:@"发送请求2"];
   return nil;
    }];
// 使用注意:几个信号,参数一的方法就几个参数,每个参数对应信号发出的数据。
    [self rac_liftSelector:@selector(updateUIWithR1:r2:) withSignalsFromArray:@[request1,request2]];
// 更新UI
- (void)updateUIWithR1:(id)data r2:(id)data1
{
    NSLog(@"更新UI%@  %@",data,data1);
}
//常用宏 文本框改变 label根本改变
// [self.textFiled.rac_textSignal subscribeNext:^(id x) {
      //        _label.text = x;
//    }];
RAC(self.label,text) = self.textFiled.rac_textSignal;
ReactiveCocoa常用方法的更多相关文章
- 【iOS】小项目框架设计(ReactiveCocoa+MVVM+AFNetworking+FMDB)
		
上一个项目使用到了ReactiveCocoa+MVVM+AFNetworking+FMDB框架设计,从最初的尝试,到后来不断思考和学习,现在对这样一个整体设计还是有了一定了理解与心得.在此与大家分享下 ...
 - MVVM  with ReactiveCocoa
		
内容提要: 本文首先对比MVC简单介绍了MVVM的概念和优点,其次,简单介绍了Reactive Cocoa的使用,最后,通过一个例子介绍了使用Reactive Cocoa的MVVM框架. 正文: 首先 ...
 - iOS开发之ReactiveCocoa下的MVVM(干货分享)
		
最近工作比较忙,但还是出来更新博客了,今天给大家分享一些ReactiveCocoa以及MVVM的一些东西,干活还是比较足的.在之前发表过一篇博文,名字叫做<iOS开发之浅谈MVVM的架构设计与团 ...
 - 前端开发:Javascript中的数组,常用方法解析
		
前端开发:Javascript中的数组,常用方法解析 前言 Array是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array ...
 - Jquery元素选取、常用方法
		
一:常用的选择器:(李昌辉) 基本选择器 $("#myDiv") //匹配唯一的具有此id值的元素 $("div") //匹配指定名称的所有元素 $(" ...
 - ReactiveCocoa 冷热订阅(cold subscribe, hot subscribe)
		
ReactiveCocoa支持两种订阅方式,一种是冷订阅,一种是热订阅. 热订阅的特点: 1.不管有没有消息订阅着,发送者总会把消息发出去. 2.不管订阅者是什么时候订阅的,发送者总是会把相同的消息发 ...
 - 为什么ReactiveCocoa中推荐使用RACSignal来做信号处理而不是RACSubject
		
原文解释在这里http://cocoadocs.org/docsets/ReactiveCocoa/0.6.0/ 在标题Creating hot subscribables 底下 先贴原文: The ...
 - 最快让你上手ReactiveCocoa之基础篇
		
前言 很多blog都说ReactiveCocoa好用,然后各种秀自己如何灵活运用ReactiveCocoa,但是感觉真正缺少的是一篇如何学习ReactiveCocoa的文章,这里介绍一下. 1.Rea ...
 - python浅谈正则的常用方法
		
python浅谈正则的常用方法覆盖范围70%以上 上一次很多朋友写文字屏蔽说到要用正则表达,其实不是我不想用(我正则用得不是很多,看过我之前爬虫的都知道,我直接用BeautifulSoup的网页标签去 ...
 
随机推荐
- ip地址分类和网段区分
			
IP地址分类/IP地址10开头和172开头和192开头的区别/判断是否同一网段 简单来说在公司或企业内部看到的就基本都是内网IP,ABC三类IP地址里的常见IP段. 每个IP地址都包含两部分,即网络号 ...
 - Debian搭建PPTPD
			
先安装pptpd: apt-get install pptpd 编辑 /etc/pptpd.conf #取消下面两行的注释,在文件的底部. # localip 192.168.0.1 # remote ...
 - SuperSocket源码解析之开篇  (转)
			
一 简介 官方介绍:SuperSocket 是一个轻量级, 跨平台而且可扩展的 .Net/Mono Socket 服务器程序框架.你无须了解如何使用 Socket, 如何维护 Socket 连接和 S ...
 - MVC学习笔记--IEnumerable的用法
			
IEnumerable的用法 IEnumerable和IEnumerable<T>接口在.NET中是非常重要的接口,它允许开发人员定义foreach语句功能的实现 并支持非泛型方法的简单的 ...
 - Linux关闭selinux
			
最近在折腾Linux服务器,配置环境时,安装php的一个拓展,明明编译成功了,就是加载不进去,phpinfo不显示,查看错误日志是显示加载失败,没权限==,配置ftp程序也会有意想不到的问题,搞了好久 ...
 - Okhttp设置http缓存,在没有网络的情况下加载http缓存里面的内容
			
HTTP_CACHE_FILENAME为缓存地址根路径: private final String HTTP_CACHE_FILENAME = "HttpCache"; priva ...
 - Spring第二天
			
Spring第二天 整体课程安排(3天+2天): 第一天:Spring框架入门.IoC控制反转的配置管理.Spring Web集成.Spring Junit集成. 第二天:Spring AOP面向切面 ...
 - C# cookies
			
谷歌浏览器- 工具---internet选项---常规---浏览历史记录---设置 cookie和网站数据 C:\Documents and Settings\Administrator\Local ...
 - Java反序列化漏洞分析
			
相关学习资料 http://www.freebuf.com/vuls/90840.html https://security.tencent.com/index.php/blog/msg/97 htt ...
 - [妙味DOM]第一课:DOM基础概念、操作
			
知识点总结 childNodes.children子节点列表集合.nodeType节点类型.nodeName.nodeValue.attributes属性列表集合 childNodes和childre ...