Lewati ke konten utama

Listeners

Listeners memungkinkan Anda menambahkan perilaku interaktif — klik, hover, drag — langsung di dalam Rive, tanpa menulis kode. Sebuah Listener memantau aksi pengguna dan merespons dengan mengubah properti View Model (wadah yang menyimpan data aplikasi Anda — didefinisikan di halaman Data Binding), menembakkan event, atau memindahkan objek.

Listeners berada di dalam sebuah State Machine (bayangkan state machine seperti diagram alur yang menentukan animasi mana yang diputar). Buka state machine untuk menambahkan dan mengelolanya.

Struktur Sebuah Listener

Setiap Listener memiliki tiga bagian:

  1. Target — Shape atau group yang berfungsi sebagai area hit. Interaksi pointer apa pun pada objek ini akan memicu Listener.
  2. Condition — Jenis event yang perlu didengarkan.
  3. Action — Apa yang terjadi ketika kondisi terpenuhi.

Menambahkan Listener

Klik tombol + di bawah State Machine Graph dan pilih Listener. Konfigurasikan Target, Condition, dan Action-nya di Inspector.

Kondisi Listener

Event Pointer

KondisiDipicu saat
Pointer DownPointer ditekan di dalam target
Pointer UpPointer dilepas di dalam target
Pointer EnterPointer memasuki area target
Pointer ExitPointer meninggalkan area target
Pointer MovePointer bergerak di dalam area target
ClickUrutan lengkap tekan-lalu-lepas di dalam target

Kondisi Berbasis Data

KondisiDipicu saat
Listen for EventSebuah event bernama terpicu pada target Component
View Model Property ChangeProperti View Model yang dipilih berubah nilainya

Aksi Listener

AksiYang dilakukan
View Model ChangeMengatur properti View Model ke nilai tertentu, atau menyalin nilai dari properti lain. Dapat menggunakan converter (aturan yang mengubah nilai sebelum digunakan — misalnya, mengonversi angka menjadi nilai benar/salah) untuk mengubah nilainya.
Report EventMenembakkan event bernama ketika kondisi terpicu.
Align TargetMemindahkan objek agar mengikuti posisi X/Y pointer — berguna untuk interaksi drag atau cursor follower.

Contoh: Hover pada Tombol

Sebuah tombol umum memiliki tiga state (Idle, Hovered, Clicked) dan dua listener:

  1. Pointer Enter → Idle mengatur isHovered = true, mendorong transisi ke state Hovered.
  2. Pointer Exit mengatur isHovered = false, kembali ke Idle.
Listeners Deep Dive

Referensi lengkap untuk kondisi, aksi, dan pola interaksi kompleks pada Listener.

State Machine

Listeners bekerja di dalam State Machines — pelajari model state machine secara menyeluruh.