Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya dapat mengesan klik dan menyentuh elemen UI dan GameObjects dalam Perpaduan?
Artikel ini memperkenalkan cara untuk mengesan klik dan sentuhan peristiwa elemen UI dan objek permainan dalam perpaduan.
pemprosesan insiden ui
Pada platform Android, sentuhan objek UI dalam kanvas tidak lagi menggunakan API input. Sebaliknya, melanggan acara UI atau melaksanakan antara muka berdasarkan peristiwa yang diperlukan.
Imej, Rawimage dan Komponen Teks:
Melaksanakan antara muka yang diperlukan (contohnya, , ) dan menulis semula fungsinya untuk mengendalikan acara tersebut.
Komponen butang: IPointerClickHandler
IPointerDownHandler
Masukkan komponen medan:
Daftar peristiwa medan input:
<code class="language-C#">button1.onClick.AddListener(() => buttonCallBack(button1));</code>
komponen slider:
Mengesan perubahan dalam nilai slider:
<code class="language-C#">inputField.onEndEdit.AddListener(delegate { inputEndEdit(); });</code>
Komponen menu drop -down:
Daftar perubahan nilai menu drop -down:
<code class="language-C#">slider.onValueChanged.AddListener(delegate { sliderCallBack(slider.value); });</code>objek permainan non -ui
Tambah
<code class="language-C#">dropdown.onValueChanged.AddListener(delegate { callBack(); });</code>ke kamera dan gunakan peristiwa yang diterangkan dalam kaedah antara muka objek UI sebelumnya.
Tambah ke kamera dan gunakan peristiwa dalam kaedah antara muka.
Pengecualian Kegagalan Sistem Acara PhysicsRaycaster
Sistem acara:
Pastikan Physics2DRaycaster
di tempat kejadian.
GOTIC: Komponen UI mesti terletak di bawah kanvas.
unjuran radio:Untuk objek 3D, pastikan bahawa dilampirkan ke kamera. Untuk objek 2D, pastikan bahawa dilampirkan pada kamera.
Penambahan skrip:EventSystem
Lumpuhkan Objek: Atas ialah kandungan terperinci Bagaimanakah saya dapat mengesan klik dan menyentuh elemen UI dan GameObjects dalam Perpaduan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!