//创建textField获得焦点信号,当信号发生时返回@YES
RACSignal *didBeginEditingSignal = [[self rac_signalForSelector:@selector(textFieldDidBeginEditing:) fromProtocol:@protocol(UITextFieldDelegate)] mapReplace:@YES];
//创建textField失去焦点信号,当信号发生时返回@NO
RACSignal *didEndEditingSignal = [[self rac_signalForSelector:@selector(textFieldDidEndEditing:) fromProtocol:@protocol(UITextFieldDelegate)] mapReplace:@NO];
//合并两种信号到一个信号
RACSignal *userTextSignal = [RACSignal merge:@[didBeginEditingSignal, didEndEditingSignal]];
//doNext是信号发生时注入的边界触发.hiden为label的属性
RAC(placehold, hidden) = [userTextSignal doNext:^(id x) {
NSLog(@"toggle placehold. %@",x);
}];ReactiveCocoa系列-隐藏显示placehold
最新推荐文章于 2021-05-07 15:56:44 发布
本文介绍如何利用RAC(ReactiveCocoa)在Swift中处理UITextField的焦点变化信号,包括开始编辑和结束编辑,并在信号触发时执行特定操作。
603

被折叠的 条评论
为什么被折叠?



