初识RAC_01

什么是RAC?

几乎每一篇介绍RAC的文章开头都是这么一个问题。我这篇文章是写给新手(包括我自己)看的,所以这个问题更是无法忽视。

简单的说,RAC就是一个第三方库,他可以大大简化你的代码过程。

官方的说,ReactiveCocoa(其简称为RAC)是由GitHub开源的一个应用于iOS和OS X开发的新框架。RAC具有函数式编程和响应式编程的特性.

 

RAC工程配置:

  习惯使用pods的童鞋可以用pod命令快速导入RAC框架  //pod 'ReactiveCocoa'

  或者直接拖入工程

RAC简单使用

/**

 *  test1 文本框的RAC
 */
-(void)test1{
     
    UITextField* textField =[[UITextField alloc] init];
     
    [self.view addSubview:textField];
     
    [textField mas_makeConstraints:^(MASConstraintMaker *make) {
        
        make.left.equalTo(@10);
         
        make.right.equalTo(@(-10));
         
        make.height.equalTo(@40);
         
        make.top.equalTo(@40);
         
    }];
     
    textField.backgroundColor =[UIColor lightGrayColor];
     
    [[textField rac_signalForControlEvents:UIControlEventEditingChanged] subscribeNext:^(id x){
        //这时候x类型为textField 建议使用这个
        NSLog(@"文本框的文字是%@",[x text]);
    }];
     
    [[textField rac_textSignal] subscribeNext:^(id x) {
        //这时候x 为 NSString类型
        NSLog(@"文本框的问题是%@",x);
    }];
}

 

posted @ 2016-09-01 15:03  Shdow_Walker  阅读(139)  评论(0编辑  收藏  举报