您好,欢迎来到知库网。
搜索
您的当前位置:首页ReactiveCocoa笔记3

ReactiveCocoa笔记3

来源:知库网

RAC的一些用法

1.代替KVO

  • 当self.view的Frame发生变化是下边两个方法都能调用内部的Block
    [self.view rac_observeKeyPath:@"frame" options:NSKeyValueObservingOptionNew observer:nil block:^(id value, NSDictionary *change, BOOL causedByDealloc, BOOL affectedOnlyLastComponent) {
        
    }];
    [[self.view rac_valuesForKeyPath:@"frame" observer:nil] subscribeNext:^(id x) {
        
    }];

2.监听事件

  • 按钮点击事件的监听
[[_btn rac_signalForControlEvents:UIControlEventTouchUpInside] subscribeNext:^(id x) {
        NSLog(@"按钮点击事件");
    }];

3.代替通知

  • 监听键盘的弹出
    [[[NSNotificationCenter defaultCenter] rac_addObserverForName:UIKeyboardWillShowNotification object:nil] subscribeNext:^(id x) {
        NSLog(@"键盘弹出");
    }];

4.监听文本框的改变

  • 当文本框文字方法改变时就会调用
    [_textField.rac_textSignal subscribeNext:^(id x) {
        NSLog(@"%@", x);
    }];

5.代替代理

  • 监听RedView中的按钮点击事件
    // 1.代替代理:1.RACSubject 2.rac_signalForSelector
    // 只要传值,就必须使用RACSubject
    [[_redView rac_signalForSelector:@selector(btnClick:)] subscribeNext:^(id x) {
        NSLog(@"控制器知道按钮被点击");
    }];

Copyright © 2019- zicool.com 版权所有 湘ICP备2023022495号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务