【iOS】【ReactiveCocoa】[RACSignal interval]定时器
2016-09-09 00:00
141 查看
摘要: RACSignal 定时器时,页面退出时,停止执行
【ReactiveCocoa】【RACSignal】【RACSignal interval】【takeUntil】【rac_willDeallocSignal】
感慨:还是stackoverflow靠谱,但国内访问太卡了!!!
http://stackoverflow.com/questions/27561582/reactive-cocoa-stop-a-racsignal-after-uiviewcontroller-is-dealloc
【ReactiveCocoa】【RACSignal】【RACSignal interval】【takeUntil】【rac_willDeallocSignal】
感慨:还是stackoverflow靠谱,但国内访问太卡了!!!
//Reactive cocoa: Stop a RACSignal after UIViewController is dealloc //启用一个RAC定时器 RACSignal *rac_viewWillDisappear = [self rac_signalForSelector:@selector(viewWillDisappear:)]; [[[RACSignal interval:10 onScheduler:[RACScheduler mainThreadScheduler]] takeUntil:rac_viewWillDisappear] subscribeNext:^(id x) { //Do what you need NSLog(@"--rac_willDeallocSignal"); }];
Q:【保留作业】有没有像oc一样的 [_timer fire];//立即执行的方法
【解题过程】【错误代码示范】 /*无效,viewdidiappear时不执行*/ /*无效,completed时也没回调*/ /*没用到,信号dispose*/ /*http://www.cnblogs.com/guoxiaoqian/p/4691035.html RAC的坑 [6.rac_willDeallocSignal不会sendNext,只会sendComplete] //错误 */ //这里要加takeUntil条件限制一下否则当控制器pop后依旧会执行 [[[RACSignal interval:2 onScheduler:[RACScheduler mainThreadScheduler]] takeUntil:self.rac_willDeallocSignal ] subscribeNext:^(id x) { NSLog(@"每两秒执行一次"); } completed:^{ NSLog(@"每两秒执行一次:completed"); }]; /* 持保留意见 https://github.com/SkyHarute/StudyForRAC */ //这里这样写只是为了给大家开拓一种思路,selector的方法可以应需求更改,即当这个方法执行后,产生一个信号告知控制器释放掉这个订阅的信号 RACSignal * deallocSignal = [self rac_signalForSelector:@selector(viewWillDisappear:)]; [[[[NSNotificationCenter defaultCenter] rac_addObserverForName:@"haha" object:nil] takeUntil:deallocSignal] subscribeNext:^(id x) { NSLog(@"haha"); }];
^_^ ^.^ ^=^ ^&^ ^!^
http://stackoverflow.com/questions/27561582/reactive-cocoa-stop-a-racsignal-after-uiviewcontroller-is-dealloc
相关文章推荐
- ReactiveCocoa之RACSignal核心类的使用(三)
- iOS Reactivecocoa(RAC)知其所以然(源码分析,一篇足以)
- ReactiveCocoa 中 RACSignal 是如何发送信号的
- Reactive Cocoa Tutorial [3] = "RACSignal的巧克力工厂“;
- iOS开发之ReactiveCocoa框架(RAC)第三篇实例颜色选择器
- iOS ReactiveCocoa(RAC)学习详解
- ReactiveCocoa中RACSignal所有变换操作底层实现分析(中)
- iOS开发之ReactiveCocoa框架(RAC)第五篇队列与高级函数
- iOS开发之ReactiveCocoa框架(RAC)第六篇程序定位
- iOS开发之ReactiveCocoa框架(RAC)第四篇构建一个信号量
- ReactiveCocoa框架菜鸟入门——信号(Signal)详解 第五课:适合给新手看的RAC用法总结
- iOS开发之ReactiveCocoa框架(RAC)第二篇登录实例
- ReactiveCocoa 中 RACSignal 是怎样发送信号
- iOS Reactivecocoa(RAC)知其所以然(源码分析,一篇足以)
- reactiveCocoa rac_signalForControlEvents多次触发解决方法
- ReactiveCocoa框架菜鸟入门——信号(Signal)详解 第二课:信号(Signal)的各种操作
- ReactiveCocoa框架菜鸟入门——信号(Signal)详解 第一课:什么是 ReactiveCocoa
- ReactiveCocoa - iOS开发的新框架
- ReactiveCocoa - iOS开发的新框架
- ReactiveCocoa实战: 模仿 "花瓣",重写 LeanCloud Rest Api的iOS REST Client.