Determine si el clic actual en la posición de la pantalla es un componente de la interfaz de usuario

Determine si la posición de clic actual es un componente de la interfaz de usuario y evite continuar con otras operaciones en la pantalla cuando se hace clic en el botón

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;

public class ARDraw : MonoBehaviour
{
    
    
 void Start()
    {
    
    
    }
    
void Update()
    {
    
    
    }

  private bool IsPointerOverUIObject()
    {
    
    
        //判断是否点击的是UI,有效应对安卓没有反应的情况,true为UI
        PointerEventData eventDataCurrentPosition = new PointerEventData(EventSystem.current);
        eventDataCurrentPosition.position = new Vector2(Input.mousePosition.x, Input.mousePosition.y);
        List<RaycastResult> results = new List<RaycastResult>();
        EventSystem.current.RaycastAll(eventDataCurrentPosition, results);
        return results.Count > 0;
    }

}

Supongo que te gusta

Origin blog.csdn.net/qq_40513792/article/details/114361018
Recomendado
Clasificación