2016-05-11 3 views
0

X要素をサイズによって制限された配列に変換する信号を変換する方法を見つけようとしています。ReactiveCocoaを使用して要素をサイズの配列に変換する

何か等:

signal.take(2).collect()observeNext { MyFunctionを変化(変更) }

しかし、それは後に完了死にます。

  • は、2つの要素
  • を取る
  • 繰り返し

任意のアイデアを関数に配列を送信:私はそれをする必要が?

答えて

1

私は(場所のため)、このタスクを解決し、それが

extention SignalProducer { 
    func accumulate(size: Int) -> SignalProducer<[Value], Error> { 
     var values: [Value] = [] 
     func next(value: Value) { 
      if values.count >= size { 
       values.removeAll() 
      } 
      values.append(value) 
     } 
     return on(next: next) 
      .filter { _ in values.count < size } 
      .map { _ -> [Value] in return values } 
    } 
} 

https://github.com/ReactiveCocoa/ReactiveCocoa/pull/2817

私の解決策です
関連する問題