2017-04-10 17 views
0

RxSwiftで私の周りを見つけられません。今のように、UIButtonを押したときにUILabelを更新する必要があります。RxSwift 3ドキュメント駆動、バインディング、およびアクション

  1. ボタンには、押下時に2つの発光が必要であり、可能であれば2つの値が2つのチャンネルを流れていくようにマッピングする必要があります。
  2. UILabelには2つのサブスクライブチルドボタンが必要です。

しかし、RxSwift 3.0以降のマニュアルは見つかりませんでしたか?

+0

「ボタンは2つの発光を必要とします」とはどういう意味ですか?何かをマップする前に2回クリックする必要があると言っているのですか、2つの排出が必要だと私たちに伝えていますか?あなたの問題の詳細を説明し、コードスニペットを表示できますか? – iwillnot

+0

これは勉強しましたか? https://www.raywenderlich.com/138547/getting-started-with-rxswift-and-rxcocoa –

答えて

0

RxSwiftを使用すると、1つのタイプのObservableから別のタイプへのイベントを操作できます。あなたはこのような何かをしたいと思う。この場合

btnButton.rx.tap // This is a ControlEvent<Void> (you can think of it as Observable<Void> for our purposes 
    .map { return "Button was Pressed" } // This is now Observable<String> 
    .asDriver(onErrorJustReturn: "") // This is now Driver<String> 
    .drive(lblText.rx.text) 
    .disposed(by: disposeBag) 

あなたはすべてのタップの場合、ボタンのtap

  • 観測からタップを観察するステップ

    1. でこのステップを経ることができますそのイベントを何らかの文字列にマッピングします
    2. ここでは、UI要素を扱っているので、Observable t oメインスケジューラで排出が確実に行われるようにするドライバー。
    3. マップした文字列でラベルのテキストを「ドライブ」します。

    TL; DRは、このラベルにあなたはそれが同じ文字列に変わるので、あまり助けにはなりませんボタンをタップするたびに設定しますが、あなたは、動的な文字列など

    をマッピングするためにその技術を適用することができます

    RxSwiftの素晴らしい旅で幸運を祈って、Slackチャンネルに参加してもらえます。そこにはより多くのヘルプと継続的な活動があるからです。

  • 関連する問題