Создание 2D-спрайта с помощью событий триггера? [dубликат]

Как обнаружить объект UI на Canvas при касании в android?

Например, у меня есть холст, у которого есть 5 объектов, таких как Image, RawImage, Buttons, InputField и т. д.

Когда я касаюсь объекта Button UI, тогда сделайте что-нибудь.

Код будет выглядеть так:

private void Update()
{
    if (Input.touches.Length <= 0) return;

    for (int i = 0; i < Input.touchCount; i++)
    {
        if (Button1.touch)
            if (Input.GetTouch(i).phase == TouchPhase.Began)
                login();
        else if (Button2.touch && Input.GetTouch(i).phase == TouchPhase.Began)
            LogOut();
    }
}

Итак, как это сделать?

Second: Как обнаружить Gameobject получает прикосновение? Это то же самое с этим выше или нет?

23
задан 30 July 2018 в 16:57

2 ответа

Вы также можете использовать OnMouseDown. OnMouseDown вызывается, когда пользователь нажимал кнопку мыши, находясь над GUIElement или Collider. Это событие отправляется ко всем сценариям коллайдера или GUIElement.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnMouseDown()
    {
        Application.LoadLevel("SomeLevel");
    }
}
3
ответ дан 15 August 2018 в 16:41

Вы можете добавить компонент EventTrigger к своим элементам пользовательского интерфейса, которые уже имеют эти Events, вам просто нужно передать method/Function на конкретное событие.

3
ответ дан 15 August 2018 в 16:41

Другие вопросы по тегам:

Похожие вопросы: