2016年4月20日のブックマーク (1件)

  • Rxで1つ前の値を取得する

    Apr 19, 2016 Twitter for iOSには選択中のタブをもう1度タップしたら最上部までスクロールするという機能があります。便利ですね。 こういう機能を実装するには、1つ前に選択されていた値が何なのか知る必要があります。 桶の時代にはプロパティに前回の値を保存するのが定石でしたが、川の時代にはskip(1)してzip()するというのが定石です(たぶん)。 let tappedIndex: Observable<Int> = ... Observable .zip(tappedIndex, tappedIndex.skip(1)) { previousIndex, currentIndex in return previousIndex == currentIndex } .filter { $0 } .subscribeNext { _ in // 最上部までスクロール }

    Rxで1つ前の値を取得する
    shiyakeita
    shiyakeita 2016/04/20
    なるほどーzipにして比較するのかー