美文网首页iOS基础
ReactiveObjC用法

ReactiveObjC用法

作者: 鹏飞说 | 来源:发表于2018-06-28 17:44 被阅读6次

    pod 'ReactiveObjC', '~> 3.1.0'

    // 代替代理
        [[self.blueView rac_signalForSelector:@selector(laile:)] subscribeNext:^(RACTuple * _Nullable x) {
            NSLog(@"控制器里面的蓝色view被点击了!!!");
            NSLog(@"%@",x);
        }];
        
        // 代理KVO 可以监听数据的改变frame 或者backgroundColor   #import <NSObject+RACKVOWrapper.h>
        //方式1:
        [self.blueView rac_observeKeyPath:@"frame" options:NSKeyValueObservingOptionOld observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {
            //回调
    
            NSLog(@"%@%@",value,change);
    
        }];
    //    //方式2:
        [[_blueView rac_valuesForKeyPath:@"frame" observer:nil] subscribeNext:^(id  _Nullable x) {
            NSLog(@"%@",x);
        }];
        //监听事件
        UIButton *btn = [[UIButton alloc]init];
        [[btn rac_signalForControlEvents:(UIControlEventTouchUpInside)] subscribeNext:^(__kindof UIControl * _Nullable x) {
            NSLog(@"%@",x);
        }];
        //通知
        [[[NSNotificationCenter defaultCenter] rac_addObserverForName:UIKeyboardDidShowNotification object:nil] subscribeNext:^(NSNotification * _Nullable x) {
            NSLog(@"%@",x);
        }];
        
        UITextField *textField = [[UITextField alloc]init];
        [[textField rac_textSignal] subscribeNext:^(NSString * _Nullable x) {
            NSLog(@"%@",x);
        }];
    

    相关文章

      网友评论

        本文标题:ReactiveObjC用法

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