信息发布→ 登录 注册 退出

Unity 点击UI与点击屏幕冲突的解决方案

发布时间:2026-01-11

点击量:

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

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

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跟场景不冲突

unity点击UI跟场景不冲突的方法

在射线检测后加!EventSystem.current.IsPointerOverGameObject()即可

需要引入命名空间using UnityEngine.EventSystems;

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!