Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya dapat mengesan klik dan menyentuh elemen UI dan GameObjects dalam Perpaduan?

Bagaimanakah saya dapat mengesan klik dan menyentuh elemen UI dan GameObjects dalam Perpaduan?

Patricia Arquette
Patricia Arquetteasal
2025-02-03 00:36:10471semak imbas

How Do I Detect Clicks and Touches on UI Elements and GameObjects in Unity?

menguji acara klik dan sentuh elemen UI dan objek permainan 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

Gunakan butang Butang Butang Pendaftaran Klik:

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

Objek 3D (Grid Renderer/Collision):

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.

Objek 2D (The Elves Rendereer/Collision):

Tambah ke kamera dan gunakan peristiwa dalam kaedah antara muka.

Pengecualian Kegagalan Sistem Acara

PhysicsRaycaster

klik

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:
    Untuk objek UI menggunakan fungsi antara muka, pastikan skrip dilampirkan pada objek untuk mengesan klik.
  • Tahap UI: Periksa sama ada terdapat unsur UI untuk menyekat objek sasaran. EventSystem Lumpuhkan Objek:
  • Sahkan sama ada objek sasaran tidak dilumpuhkan.

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn