So erstellen Sie eine einfache animation-Effekt
Gibt es ein code-Beispiel zur Verfügung, das veranschaulicht, wie verwenden Sie einen 2D-Transformation (wie drehen und skalieren) mit einem JPG in ein reagieren-native Anwendung, vielleicht mit dem code im tutorial als Ausgangspunkt?
Wenn möglich, wäre es hilfreich zu sehen-code für zwei Szenarien:
1) automatically apply a transform when the app is launched
2) apply a transform after different types of user gestures
Irgendwann in der Zukunft wäre es interessant zu sehen, wie zum erstellen von 3D-Transformationen und-Animationen.
- Das React Native-animation-API gelandet. Schauen Sie sich die links hier bei hacker news! news.ycombinator.com/item?id=9872996
Du musst angemeldet sein, um einen Kommentar abzugeben.
Update: sehen Sie das gesamte Beispiel in meiner Beispiel-app hier: https://github.com/grgur/react-native-memory-game
Animation ist jetzt AnimationExperimental also müssen wir ändern zvona Lösung.
Erstens, stellen Sie sicher, dass
RCTAnimationExperimental
eine verlinkte BibliothekWenn nicht, dann gehen Sie folgendermaßen vor:
node_modules/react-native/Libraries/Animation/
RCTAnimationExperimental.xcodeproj
für Bibliotheken (sollte so Aussehen wie das Bild oben)Libraries/RCTAnimationExperimental.xcodeproj/Products
libRctAnimationExperimental.a
zuLink Binary With Libraries
Ok, der schwierigste Teil ist nun vorbei. Den Kopf über Ihre JavaScript-Datei. Animation ist nicht mehr Teil des reagieren-native-Paket, so müssen wir noch explizit.
JS:
Okay, champ, du bist bereit, zu animieren. Stellen Sie sicher, Sie wissen, was Sie zu animieren. Die anzeigen werden Sie zu animieren, wird bezeichnet als
node
.JS:
... Und das ist es!
Im moment des Schreibens, Eigenschaften verfügbar sind:
opacity
,position
,positionX
,positionY
,rotation
,scaleXY
Derzeit, dies ist ein etwas komplexer Prozess, und ich bin Planung zu schreiben, einen blog-Beitrag darüber. Jedoch, wie ein kurzer starter, Schreibe ich hier etwas.
Erste problem ist, dass RCTAnimation /RCTAnimationManager überhaupt nicht vorhanden ist, wenn Sie erstellt haben, Ihr Projekt mit
react-native init [ProjectName]
(https://github.com/facebook/react-native/issues/226).Müssen Sie es in XCode aus einem plus-Zeichen in der linken oberen Ecke: "Dateien Hinzufügen" [Projektname]". Dann navigieren Sie zu
node_modules > Libraries > Animation > RCTAnimation.xcodeproj
. Nachdem es importiert, müssen Sie ziehen Sie es unterLibraries
in Ihrem Projekt.Dann müssen Sie öffnen Sie die Registerkarte
Build Phases
. Dort haben Sie im MenüLink Binary With Libraries (x items)
. Ziehen Sie ausProducts
unterRCTAnimation.xcodeproj
Datei namenslibRCTAnimation.a
zum Menü.Nun, Sie bauen Ihr Projekt zur Unterstützung von Animationen. Ich bin nicht so vertraut mit XCode, so könnte es ein noch einfacher Weg, dies zu erreichen, aber ich habe es sortiert wie dieses.
Zweite Problem ist, dass nicht alle verfügbar sind (oder geplant) die Funktionalität ist da. Zumindest lief ich durch den Dschungel der Irrungen und Fehler, bevor ich alles auf dem Bildschirm.
Versuchen, z.B. dieser code auf den ersten, um voll und ganz bewiesen haben, dass Animationen arbeiten:
Das sollte erhalten Sie gehen. Wenn Sie Hilfe benötigen, bitte informieren Sie mich.
Wenn ich jemals gelingen schriftlich eine vollständige Anleitung in form von einem blog-Artikel werde ich aktualisieren, um diese Antwort.
Check-out die 2048 demo-Anwendung zum Beispiel die Nutzung der RCTAnimation Bibliothek:
https://github.com/facebook/react-native/tree/master/Examples/2048
Es keine besonders komplexe Transformationen, aber nicht animieren
position
,opacity
, undscaleXY
verschiedenen Elementen mit code, der wie folgt aussieht: