Fablic社でのReactiveCocoaの(ゆるい)導入事例
テキストフィールドに入力された値からインクリメンタルサーチを行いたい場合というのはよくある要件ではないでしょうか。そのようなパターンを ReactiveCocoa では以下のように実装することができます。 [[[[[textField.rac_textSignal filter:^BOOL(NSString *text) { return text.length > 0; }] throttle:0.5] map:^(NSString *text) { return [[APIClient sharedClient] fetchSearchResultWithQuery:text]; }] switchToLatest] subscribeNext:^(id JSON) { NSLog(@"Search result: %@", JSON); }]; -filter:で空文字を除外する。
[[[NSNotificationCenter defaultCenter] rac_addObserverForName:UIApplicationDidEnterBackgroundNotification object:nil] subscribeNext:^(NSNotification *note) { // do something }]; という形で通知をシグナルのnextとして受け取ることができます。 しかしこれには一点注意しなければならないことがあります。というのも、-rac_addObserverForName:object:で得られるシグナルはcompletedになることがない無限のシグナル (Infinite Signal) であり、その一方で通知のオブサーバー登録の解除はシグナルが終了した時にしかされないため、上記のようなコードだとオブサーバー登録が解除されないま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く