Unity 点击UI与点击屏幕冲突

Unity 有点击屏幕进行移动操作,通过Input.GetMouseButtonDown(0)。如果点击到了一些UI上面会触发点击屏幕事件。

引入UnityEngine.EventSystems,用函数判断一下即可

Unity 点击UI与点击屏幕冲突_第1张图片

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using DG.Tweening;
using UnityEngine.EventSystems;
public class PlayerController : MonoBehaviour
{
    private void Update()
    {
        if (EventSystem.current.IsPointerOverGameObject()) return;
        if (Input.GetMouseButtonDown(0))
        {
            Debug.Log("点击屏幕");
        }
    }
}

这个方法会将点击Text的时候也会当作点击UI

将raycast target 取消勾选可以避免。

Unity 点击UI与点击屏幕冲突_第2张图片

 

你可能感兴趣的:(Unity)