ReactiveCocoa之RAC常用宏(十)

前端之家收集整理的这篇文章主要介绍了ReactiveCocoa之RAC常用宏(十)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. /**
  2. *RAC有许多强大而方便的宏。
  3. */
  4. -(void)viewDidLoad{
  5. [superviewDidLoad];
  6. //Doanyadditionalsetupafterloadingtheview,typicallyfromanib.
  7. selftestAndtest2];
  8. }
  9. /**
  10. *RAC宏
  11. */
  12. void)test
  13. {
  14. //RAC:把一个对象的某个属性绑定一个信号,只要发出信号,就会把信号的内容给对象的属性赋值
  15. //给label的text属性绑定了文本框改变的信号
  16. RAC(self.label,text)=self.textField.rac_textSignal;
  17. //[self.textField.rac_textSignalsubscribeNext:^(idx){
  18. //self.label.text=x;
  19. //}];
  20. *KVO
  21. *RACObserveL:快速的监听某个对象的某个属性改变
  22. *返回的是一个信号,对象的某个属性改变的信号
  23. void)test2{
  24. [RACObserve(self.view,center)subscribeNext:^(idx){
  25. NSLog(@"%@",x);
  26. }];
  27. }
  28. -(void)testAndtest2//textField输入的值赋值给label,监听label文字改变,
  29. {
  30. NSLog(@"====label的文字变了");
  31. *循环引用问题
  32. void)test3{
  33. @weakify(self)
  34. RACSignal*signal=[RACSignalcreateSignal:^RACDisposable*(id<RACSubscriber>subscriber){
  35. @strongify(self.view);
  36. returnnil;
  37. }];
  38. _signal=signal;
  39. *元祖
  40. *快速包装一个元组
  41. *把包装的类型放在宏的参数里面,就会自动包装
  42. void)test4{
  43. RACTuple*tuple=RACTuplePack(@1,153); background-color:inherit; font-weight:bold">@2,153); background-color:inherit; font-weight:bold">@4);
  44. //宏的参数类型要和元祖中元素类型一致,右边为要解析的元祖。
  45. RACTupleUnpack_(NSNumber*num1,153); background-color:inherit; font-weight:bold">NSNumber*num2,153); background-color:inherit; font-weight:bold">NSNumber*num3)=tuple;//4.元祖
  46. //快速包装一个元组
  47. //把包装的类型放在宏的参数里面,就会自动包装
  48. NSLog(@"%@%@%@",num1,num2,num3);
  49. }

猜你在找的React相关文章