ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:19.69KB ,
资源ID:8940157      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8940157.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(好用的ReactiveCocoa.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

好用的ReactiveCocoa.docx

1、好用的ReactiveCocoa这样好用的ReactiveCocoa,根本停不下来前戏我个人非常推崇ReactiveCocoa,它就像中国的太极,太极生两仪,两仪生四象,四象生八卦,八卦生万物。ReactiveCocoa是一个高度抽象的编程框架,它真的很抽象,初看你不知道它是要干嘛的,等你用上了之后,就发现,有了它你是想干嘛就干嘛,编码从未如此流畅。在此我不会讲ReactiveCocoa的原理,因为不能讲明白的才叫抽象。我也不会提及相关概念。我只是让你看看我用着它是有多爽。代码的四十八手察值你别动,你一动我就知道。1. weakify(self);2. RACObserve(self,valu

2、e)subscribeNext:(NSString*x)3. strongify(self);4. NSLog(你动了);5. ;单边你唱歌,我就跳舞。textField的内容长度隐射成BOOL值,绑定到confirmButton的enable属性上面,当textField输入内容不为空的时候,confirmButton的enable = YES。1. RACSignal*signalA=RACSignalcreateSignal:RACDisposable*(idsubscriber)2. subscribersendNext:唱歌;3. subscribersendCompleted;4.

3、 returnnil;5. ;6. RAC(self,value)=signalAmap:id(NSString*value)7. if(valueisEqualToString:唱歌)8. return跳舞;9. 10. return;11. ;双边你向西,他就向东,他向左,你就向右。 1. RACChannelTerminal*channelA=RACChannelTo(self,valueA);2. RACChannelTerminal*channelB=RACChannelTo(self,valueB);3. channelAmap:id(NSString*value)4. if(va

4、lueisEqualToString:西)5. return东;6. 7. returnvalue;8. subscribe:channelB;9. channelBmap:id(NSString*value)10. if(valueisEqualToString:左)11. return右;12. 13. returnvalue;14. subscribe:channelA;15. RACObserve(self,valueA)filter:BOOL(idvalue)16. returnvalue?YES:NO;17. subscribeNext:(NSString*x)18. NSLog(

5、你向%,x);19. ;20. RACObserve(self,valueB)filter:BOOL(idvalue)21. returnvalue?YES:NO;22. subscribeNext:(NSString*x)23. NSLog(他向%,x);24. ;25. self.valueA=西;26. self.valueB=左;1. 2015-08-1520:14:46.544Test2440:99901你向西2. 2015-08-1520:14:46.544Test2440:99901他向东3. 2015-08-1520:14:46.545Test2440:99901他向左4. 2

6、015-08-1520:14:46.545Test2440:99901你向右代理你是程序员,你帮我写个app吧。1. protocolProgrammer2. -(void)makeAnApp;3. end1. RACSignal*ProgrammerSignal=2. selfrac_signalForSelector:selector(makeAnApp)3. fromProtocol:protocol(Programmer);4. ProgrammerSignalsubscribeNext:(RACTuple*x)5. NSLog(花了一个月,app写好了);6. ;7. selfmak

7、eAnApp;1. 2015-08-1520:46:45.720Test2817:114564花了一个月,app写好了广播知道你的频道,我就能听到你了。1. NSNotificationCenterdefaultCenterrac_addObserverForName:代码之道频道object:nilsubscribeNext:(NSNotification*x)2. NSLog(技巧:%,x.userInfo技巧);3. ;4. NSNotificationCenterdefaultCenterpostNotificationName:代码之道频道object:niluserInfo:技巧:

8、用心写;1. 2015-08-1520:41:15.786Test2734:111505技巧:用心写连接生活是一个故事接一个故事。1. RACSignal*signalA=RACSignalcreateSignal:RACDisposable*(idsubscriber)2. subscribersendNext:我恋爱啦;3. subscribersendCompleted;4. returnnil;5. ;6. RACSignal*signalB=RACSignalcreateSignal:RACDisposable*(idsubscriber)7. subscribersendNext:

9、我结婚啦;8. subscribersendCompleted;9. returnnil;10. ;11. signalAconcat:signalBsubscribeNext:(idx)12. NSLog(%,x);13. ;1. 2015-08-1512:19:46.707Test1845:64122我恋爱啦2. 2015-08-1512:19:46.707Test1845:64122我结婚啦合并污水都应该流入污水处理厂被处理。1. RACSignal*signalA=RACSignalcreateSignal:RACDisposable*(idsubscriber)2. subscrib

10、ersendNext:纸厂污水;3. returnnil;4. ;5. RACSignal*signalB=RACSignalcreateSignal:RACDisposable*(idsubscriber)6. subscribersendNext:电镀厂污水;7. returnnil;8. ;9. RACSignalmerge:signalA,signalBsubscribeNext:(idx)10. NSLog(处理%,x);11. ;1. 2015-08-1512:10:05.371Test1770:60147处理纸厂污水2. 2015-08-1512:10:05.372Test177

11、0:60147处理电镀厂污水组合你是红的,我是黄的,我们就是红黄的,你是白的,我没变,我们是白黄的。1. RACSignal*signalA=RACSignalcreateSignal:RACDisposable*(idsubscriber)2. subscribersendNext:红;3. subscribersendNext:白;4. returnnil;5. ;6. RACSignal*signalB=RACSignalcreateSignal:RACDisposable*(idsubscriber)7. subscribersendNext:白;8. returnnil;9. ;10

12、. RACSignalcombineLatest:signalA,signalBsubscribeNext:(RACTuple*x)11. RACTupleUnpack(NSString*stringA,NSString*stringB)=x;12. NSLog(我们是%的,stringA,stringB);13. ;1. 2015-08-1512:14:19.837Test1808:62042我们就是红黄的2. 2015-08-1512:14:19.837Test1808:62042我们是白黄的压缩你是红的,我是黄的,我们就是红黄的,你是白的,我没变,哦,那就等我变了再说吧。1. RACSi

13、gnal*signalA=RACSignalcreateSignal:RACDisposable*(idsubscriber)2. subscribersendNext:红;3. subscribersendNext:白;4. returnnil;5. ;6. RACSignal*signalB=RACSignalcreateSignal:RACDisposable*(idsubscriber)7. subscribersendNext:白;8. returnnil;9. ;10. signalAzipWith:signalBsubscribeNext:(RACTuple*x)11. RACT

14、upleUnpack(NSString*stringA,NSString*stringB)=x;12. NSLog(我们是%的,stringA,stringB);13. ;1. 2015-08-1520:34:24.274Test2660:108483我们是红白的映射我可以点石成金。1. RACSignal*signal=RACSignalcreateSignal:RACDisposable*(idsubscriber)2. subscribersendNext:石;3. returnnil;4. map:id(NSString*value)5. if(valueisEqualToString

15、:石)6. return金;7. 8. returnvalue;9. ;10. signalsubscribeNext:(idx)11. NSLog(%,x);12. ;1. 2015-08-1620:00:12.853Test740:15871金归约糖加水变成糖水。1. RACSignal*sugarSignal=RACSignalcreateSignal:RACDisposable*(idsubscriber)2. subscribersendNext:糖;3. returnnil;4. ;5. RACSignal*waterSignal=RACSignalcreateSignal:RAC

16、Disposable*(idsubscriber)6. subscribersendNext:水;7. returnnil;8. ;9. RACSignalcombineLatest:sugarSignal,waterSignalreduce:id(NSString*sugar,NSString*water)10. returnsugarstringByAppendingString:water;11. subscribeNext:(idx)12. NSLog(%,x);13. ;1. 2015-08-1620:07:00.356Test807:19177糖水过滤未满十八岁,禁止进入。1. R

17、ACSignalcreateSignal:RACDisposable*(idsubscriber)2. subscribersendNext:(15);3. subscribersendNext:(17);4. subscribersendNext:(21);5. subscribersendNext:(14);6. subscribersendNext:(30);7. returnnil;8. filter:BOOL(NSNumber*value)9. returnvalue.integerValue=18;10. subscribeNext:(idx)11. NSLog(%,x);12.

18、;1. 2015-08-1620:11:20.071Test860:21214212. 2015-08-1620:11:20.071Test860:2121430扁平打蛋液,煎鸡蛋,上盘。1. RACSignalcreateSignal:RACDisposable*(idsubscriber)2. NSLog(打蛋液);3. subscribersendNext:蛋液;4. subscribersendCompleted;5. returnnil;6. flattenMap:RACStream*(NSString*value)7. returnRACSignalcreateSignal:RAC

19、Disposable*(idsubscriber)8. NSLog(把%倒进锅里面煎,value);9. subscribersendNext:煎蛋;10. subscribersendCompleted;11. returnnil;12. ;13. flattenMap:RACStream*(NSString*value)14. returnRACSignalcreateSignal:RACDisposable*(idsubscriber)15. NSLog(把%装到盘里,value);16. subscribersendNext:上菜;17. subscribersendCompleted

20、;18. returnnil;19. ;20. subscribeNext:(idx)21. NSLog(%,x);22. ;1. 2015-08-1620:39:34.786Test1226:34386打蛋液2. 2015-08-1620:39:34.787Test1226:34386把蛋液倒进锅里面煎3. 2015-08-1620:39:34.787Test1226:34386把煎蛋装到盘里4. 2015-08-1620:39:34.787Test1226:34386上菜秩序把大象塞进冰箱只需要三步:打开冰箱门,把大象塞进冰箱,关上冰箱门。1. RACSignalcreateSignal:

21、RACDisposable*(idsubscriber)2. NSLog(打开冰箱门);3. subscribersendCompleted;4. returnnil;5. then:RACSignal*6. returnRACSignalcreateSignal:RACDisposable*(idsubscriber)7. NSLog(把大象塞进冰箱);8. subscribersendCompleted;9. returnnil;10. ;11. then:RACSignal*12. returnRACSignalcreateSignal:RACDisposable*(idsubscrib

22、er)13. NSLog(关上冰箱门);14. subscribersendCompleted;15. returnnil;16. ;17. subscribeCompleted:18. NSLog(把大象塞进冰箱了);19. ;1. 2015-08-1620:45:27.724Test1334:37870打开冰箱门2. 2015-08-1620:45:27.725Test1334:37870把大象塞进冰箱3. 2015-08-1620:45:27.725Test1334:37870关上冰箱门4. 2015-08-1620:45:27.726Test1334:37870把大象塞进冰箱了命令我命

23、令你马上投降。1. RACCommand*aCommand=RACCommandallocinitWithSignalBlock:RACSignal*(idinput)2. returnRACSignalcreateSignal:RACDisposable*(idsubscriber)3. NSLog(我投降了);4. subscribersendCompleted;5. returnnil;6. ;7. ;8. aCommandexecute:nil;1. 2015-08-1620:54:32.492Test1450:41849我投降了延迟等等我,我还有10秒钟就到了。1. RACSigna

24、lcreateSignal:RACDisposable*(idsubscriber)2. NSLog(等等我,我还有10秒钟就到了);3. subscribersendNext:nil;4. subscribersendCompleted;5. returnnil;6. delay:10subscribeNext:(idx)7. NSLog(我到了);8. ;1. 2015-08-1621:00:57.622Test1619:45924等等我,我还有10秒钟就到了2. 2015-08-1621:01:07.624Test1619:45924我到了重放一次制作,多次观看。1. RACSignal*

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1