美文网首页
RAC之四(RAC常用方法)

RAC之四(RAC常用方法)

作者: RM_乾笙 | 来源:发表于2018-06-02 16:12 被阅读22次
1.代替代理
 /* 1.代替代理 */
self.textField.delegate = self;
[[self rac_signalForSelector:@selector(textFieldDidBeginEditing:)fromProtocol:@protocol(UITextFieldDelegate)] subscribeNext:^(RACTuple * _Nullable x) {
     RACTupleUnpack(UITextField *textField) = x;
     NSLog(@"textField:%@",textField);
}];
2.监听事件
 /** 2.监听事件 */
[[self.button rac_signalForControlEvents:UIControlEventTouchUpInside] subscribeNext:^(__kindof UIButton * _Nullable x) {
     self.textField.text = @"88888888888";
}];
3.代替通知
 /** 3.代替通知 */
 [[[NSNotificationCenter defaultCenter] rac_addObserverForName:@"Mr_zhang's" object:nil] subscribeNext:^(NSNotification * _Nullable x) {
     NSLog(@"----%@----",x.name);
     NSDictionary *dict = x.object;
     NSLog(@"%@",dict);
}];
NSDictionary *dict = [[NSDictionary alloc] initWithObjectsAndKeys:@"Mr_zhang",@"name",@"26",@"age",nil];
[[NSNotificationCenter defaultCenter] postNotificationName:@"Mr_zhang's" object:dict];
4.监听文本框改变
/** 4.监听文本框改变 */
[[self.textField rac_textSignal] subscribeNext:^(NSString * _Nullable x) {
     NSLog(@"%@",x);
}];
5.代替KVO
/** 4.代替KVO */
[self.textField rac_observeKeyPath:@"text" options:NSKeyValueObservingOptionOld |NSKeyValueObservingOptionNew  observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {
     //回调
     NSLog(@"value%@---%@",value,change);
}];

-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
    self.textField.text = @"222";
}

总结:使用RAC这些方法,可以让我们监听的事件或者使用的方法,都可以在Block回调到,代码可读性也大大提高

相关文章

  • RAC之四(RAC常用方法)

    1.代替代理 2.监听事件 3.代替通知 4.监听文本框改变 5.代替KVO 总结:使用RAC这些方法,可以让我们...

  • RAC(二)

    RAC常用方法 (instancetype)flattenMap:(RACStream * (^)(id valu...

  • RAC(ReactiveCocoa)使用方法(一)

    RAC(ReactiveCocoa)使用方法(一)RAC(ReactiveCocoa)使用方法(二) 什么是RAC...

  • ReactiveObjC 源码阅读笔记 (-rac_signal

    常用方法响应 -rac_signalForSelector: 使用: 源码 NSObject+RACSelecto...

  • RAC常用方法

    前言 由于时间的问题,暂且只更新这么多了,后续还会持续更新本文《最快让你上手ReactiveCocoa之进阶篇》,...

  • RAC(iOS)常用方法

    前言 在学完RAC后发现方法的用法总是会忘,于是简单记录一下在工程中的用法。 RAC常用方法 UIButton点击...

  • RAC使用

    RAC常用宏 KVO监听使用 RAC宏使用 信号类使用 使用信号模拟代理 rac_sequence遍历字典 解包元...

  • RAC整理

    RAC常用的方法,搭配@weakify(self); @weakify(self); 通知 control Ges...

  • 2019-12-10

    iOS开发之RAC(一)初级篇 一、RAC是什么? 1、RAC全称:ReactiveCocoa, Github 一...

  • RAC之常用方法汇总

    一、iOS内部对不同事件的处理 iOS中对不同事件作出响应时,会用不同的方式来处理这些业务逻辑。比如按钮的点击使用...

网友评论

      本文标题:RAC之四(RAC常用方法)

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