Ich versuche, ReactiveCocoa zu lernen, und ich schreibe einen einfachen Space Invaders-Klon, der auf einem Ray Wenderlich-Tutorial basiert. In letzter Zeit stand ich während der Entwicklung vor einem Problem, das ich nicht lösen kann. Grundsätzlich habe ich zwei Signale:
Was ich erreichen möchte, ist, diese Signale in einem neuen zu kombinieren, das feuert, wenn sich beide Signale ändern: ist es möglich? Ich habe die Methode combineLatest gesehen, aber der Block wird ausgeführt, wenn sich Signale ändern.
Mein gewollter Pseudocode ist:
%Vor%Wahrscheinlich kann ich das gleiche Ergebnis auf andere Weise erzielen oder dies ist nicht das erwartete Verhalten oder ReactiveCocoa, aber an dieser Stelle frage ich mich, ob ich in der richtigen reaktiven Spur bin oder nicht.
Anstelle von +combineLatest:reduce:
möchten Sie +zip:reduce:
. Zip erfordert, dass alle Signale geändert werden, bevor ein neuer Wert reduziert und gesendet wird.
Da Sie die Werte des Timers nicht wirklich interessieren, kann -sample:
tun, was Sie wollen:
Dies wird den letzten Wert von gestureSignal
weiterleiten, wenn updateEventSignal
ausgelöst wird.
Tags und Links objective-c ios reactive-cocoa