ReactiveCocoa之RAC常用宏(十)
来源:互联网 发布:java调用ireport模板 编辑:程序博客网 时间:2024/06/06 08:46
/** * RAC有许多强大而方便的宏。 */- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. [self testAndtest2]; }/** *RAC宏 */- (void)test{ // RAC:把一个对象的某个属性绑定一个信号,只要发出信号,就会把信号的内容给对象的属性赋值 // 给label的text属性绑定了文本框改变的信号 RAC(self.label, text) = self.textField.rac_textSignal;// [self.textField.rac_textSignal subscribeNext:^(id x) {// self.label.text = x;// }];}/** * KVO * RACObserveL:快速的监听某个对象的某个属性改变 * 返回的是一个信号,对象的某个属性改变的信号 */- (void)test2 { [RACObserve(self.view, center) subscribeNext:^(id x) { NSLog(@"%@", x); }];}- (void)testAndtest2 // textField输入的值赋值给label,监听label文字改变,{ RAC(self.label, text) = self.textField.rac_textSignal; [RACObserve(self.label, text) subscribeNext:^(id x) { NSLog(@"====label的文字变了"); }]; }/** * 循环引用问题 */- (void)test3 { @weakify(self) RACSignal *signal = [RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber) { @strongify(self) NSLog(@"%@",self.view); return nil; }]; _signal = signal;}/** * 元祖 * 快速包装一个元组 * 把包装的类型放在宏的参数里面,就会自动包装 */- (void)test4 { RACTuple *tuple = RACTuplePack(@1,@2,@4); // 宏的参数类型要和元祖中元素类型一致, 右边为要解析的元祖。 RACTupleUnpack_(NSNumber *num1, NSNumber *num2, NSNumber * num3) = tuple;// 4.元祖 // 快速包装一个元组 // 把包装的类型放在宏的参数里面,就会自动包装 NSLog(@"%@ %@ %@", num1, num2, num3); }
0 0
- ReactiveCocoa之RAC常用宏(十)
- ReactiveCocoa之RAC常用宏(十)
- ReactiveCocoa之RAC内存管理(十二)
- ReactiveCocoa之RAC映射(七)
- ReactiveCocoa之RAC过滤(八)
- ReactiveCocoa之RAC合并(九)
- ReactiveCocoa之RAC映射(七)
- ReactiveCocoa之RAC过滤(八)
- ReactiveCocoa之RAC合并(九)
- ReactiveCocoa之RAC宏展开解析【iOS源码阅读】
- iOS开发之ReactiveCocoa框架(RAC)第一篇
- XZ_iOS之RAC(ReactiveCocoa)的介绍和使用
- ReactiveCocoa 浅谈RAC-(一)
- iOS开发:ReactiveCocoa(RAC)应用场景
- iOS Reactivecocoa(RAC)原理分析
- iOS开发之ReactiveCocoa框架(RAC)第二篇登录实例
- iOS开发之ReactiveCocoa框架(RAC)第三篇实例颜色选择器
- iOS开发之ReactiveCocoa框架(RAC)第四篇构建一个信号量
- lintcode ----主元素
- super和this
- Git 服务的配置
- Wordress出现Maximum execution time超时
- 移动端适配
- ReactiveCocoa之RAC常用宏(十)
- flex box 的基础使用
- UGUI之RectTransform知识点 图解
- 无线WiFi破解教程(转载)
- 解决"express不是内部或外部命令"
- MariaDB在外网授权的坑
- IOS 访问java提供的webservice接口,心魔之使
- Android开发笔记之:Handler Runnable与Thread的区别详解
- c#反射相关