Frage

Ich versuche, einen Partikeleffekt zu erzielen, bei dem eine Zelle in einer anderen Zelle verschachtelt ist.Denken Sie an das einfache Beispiel eines Feuerwerks, das es hier gibt Apple-Dokumente.Sie haben Zellen in andere Zellen verschachtelt und sie mithilfe des BeginTime-Parameters zeitlich festgelegt.Ich habe jedoch nicht wie sie einen „beginTime“-Parameter für meine CAEmittorCell, ich habe stattdessen einen im CAEmittorLayer ...Wie soll ich Zellen verschachteln und zu unterschiedlichen Zeiten ausführen lassen, wenn die Zelle keinen beginTime-Parameter hat?

Beachten Sie, dass es im Apple-Beispielcode einen „beginTime“-Parameter für CAEmitterCell gibt

**CAEmitterCell *firework = [CAEmitterCell emitterCell];**
firework.contents = img;
firework.birthRate = 9999;
firework.scale = 0.6;
firework.velocity = 130;
firework.lifetime = 2;
firework.alphaSpeed = -0.2;
firework.yAcceleration = -80;
**firework.beginTime = 1.5;**
firework.duration = 0.1;
firework.emissionRange = 2 * M_PI;
firework.scaleSpeed = -0.1;
firework.spin = 2;

---- Gelöst, siehe Antworten unten ----

Ich habe den Selektor einfach manuell wie folgt aufgerufen, um das gewünschte Ergebnis zu erhalten:

CAEmitterCell cell = new CAEmitterCell();
cell.SetValueForKeyPath (NSNumber.FromFloat(1), (NSString)"beginTime");
War es hilfreich?

Lösung

Der CAMediaTiming Bindungen fehlen nicht wirklich.Sie wurden zusammengefaltet CAAnimation (Hier) Und CALayer (Hier).Das liegt daran, dass es vor 7.0 war [Protocol] Unterstützung, war die Art und Weise, Protokolle zu implementieren.

Das Problem ist das CAMediaTiming Ist dokumentiert nur von diesen beiden Typen übernommen werden - aber CAEmitterCell (und vielleicht auch andere, ich muss das überprüfen) auch entspricht dazu und im Augenblick Legen Sie die Protokollmethoden nicht offen.

Die schnelle/sofortige Problemumgehung besteht darin, den fehlenden Selektor auf der Instanz aufzurufen.Zukünftige Versionen von Xamarin.iOS werden sie bereitstellen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top