Pilih driver, gabungkan beberapa, dan ketahui persis apa yang terjadi saat satu berhenti atau diganti.
timing, spring, dan decay
timing mengikuti kurva selama duration yang tetap. spring mengikuti fisika dan tidak punya durasi tetap. decay dimulai dengan kecepatan lalu melambat.
Driver yang sama menerima angka, ValueXY, atau record, sehingga { x, y, opacity } bisa bergerak bersama.
Menyiapkan contoh…
Parameter pegas
Gunakan satu parameterisasi. Tanpanya Anda mendapat pegas bawaan React Native (tension 40, friction 7). velocity pegas secara bawaan adalah kecepatan gerak yang diinterupsinya.
sequence menjalankan satu per satu, parallel bersamaan, stagger memulai masing-masing setelah jeda, delay menunggu, dan loop mengulang. Hasilnya kembali berupa pengendali, jadi komposisi bisa disusun bersarang.
Menyiapkan contoh…
start, stop, dan reset
Setiap pengendali punya start(callback?), stop(), dan reset(). Callback menerima { finished }: false saat gerak dihentikan atau diganti.
Memulai driver baru pada nilai yang sama menggantikan yang sedang berjalan dari posisi saat ini. Tidak ada lompatan ke ujung mana pun.
controller.js
const move = timing(value, { toValue: 1, duration: 600 });
move.start(({ finished }) => {
// finished is false when stopped or replaced by a new animation
});
move.stop(); // keeps the value where it is on screen
move.reset(); // returns to where this animation started
Mengikuti nilai lain
toValue yang hidup memulai ulang driver setiap kali nilai itu berubah, seperti tracking di React Native. follow(target, source) adalah sambungan pegas yang sama sebagai fungsi bernama.
tracking.js
// A live toValue tracks another value, like React Native tracking.spring(badge, { toValue: pointer, stiffness: 300, damping: 26 }).start();
// follow() is the same connection as a named function.follow(badge, pointer, { stiffness: 300, damping: 26 });
Easing dan keyframe
Easing sesuai dengan React Native: linear, quad, cubic, sin, circle, exp, elastic, back, bounce, bezier, serta helper in, out, inOut. keyframes(value, frames, options) membawa satu nilai melewati beberapa angka dengan times dan repeat opsional.